...
Facts
There are two facts: A customer made a deposit request
and A customer made a withdraw request
.
Code Block | ||
---|---|---|
| ||
package samples.banking;
/**
* Account
*/
public class Account {
private String accountNumber;
private int balance;
public String getAccountNumber() {
return accountNumber;
}
public void setAccountNumber(String accountNumber) {
this.accountNumber = accountNumber;
}
public int getBalance() {
return balance;
}
public void setBalance(int balance) {
this.balance = balance;
}
public void increment(int value) {
balance += value;
}
public void decrement(int value) {
balance -= value;
}
}
package samples.banking;
/**
* Deposit fact
*/
public class Deposit {
private String accountNumber;
private int amount;
public String getAccountNumber() {
return accountNumber;
}
public void setAccountNumber(String accountNumber) {
this.accountNumber = accountNumber;
}
public int getAmount() {
return amount;
}
public void setAmount(int amount) {
this.amount = amount;
}
}
package samples.banking;
/**
* DepositAccept facts
*/
public class DepositAccept {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
package samples.banking;
/**
* Withdraw fact
*/
public class Withdraw {
private String accountNumber;
private int amount;
public String getAccountNumber() {
return accountNumber;
}
public void setAccountNumber(String accountNumber) {
this.accountNumber = accountNumber;
}
public int getAmount() {
return amount;
}
public void setAmount(int amount) {
this.amount = amount;
}
}
package samples.banking;
/**
* WithdrawAccept fact
*/
public class WithdrawAccept {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
package samples.banking;
/**
* WithdrawReject fact
*/
public class WithdrawReject {
private String reason;
public String getReason() {
return reason;
}
public void setReason(String reason) {
this.reason = reason;
}
}
|
Rule Service Configuration (service.rsl)
An in-line rule set is used within the service.rsl file as follows.
...