⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 makewithdrawal.java

📁 RMI英文教程,从各个方面教你怎么进行RMI开发
💻 JAVA
字号:
package com.ora.rmibook.chapter13.bank.applications.tests;


import com.ora.rmibook.chapter13.bank.applications.*;
import com.ora.rmibook.chapter13.bank.valueobjects.*;
import com.ora.rmibook.chapter13.bank.*;
import java.rmi.*;


public class MakeWithdrawal extends Test {
    public MakeWithdrawal(NameRepository nameRepository) {
        super (nameRepository);
    }

    protected String describeOperation() {
        return "make a widthdrawal from ";
    }
    
    protected String performActualTest(String idNumber, Account3 account) {
        Money balance = null;
        Money amountToWithdraw = getRandomMoney();
        Money correctResult;
        Money actualResultingBalance;

        try {
            balance = account.getBalance(idNumber);
            correctResult = balance.subtract(amountToWithdraw);
            account.makeWithdrawal(idNumber, amountToWithdraw);
            actualResultingBalance = account.getBalance(idNumber);
        } catch (RemoteException remoteException) {
            return REMOTE_EXCEPTION_THROWN;
        } catch (OverdraftException overdraftException) {
            if (amountToWithdraw.greaterThan(balance)) {
                return SUCCESS;
            } else {
                return FAILURE;
            }
        } catch (LockedAccountException lockedAccountException) {
            return ACCOUNT_WAS_LOCKED;
        } catch (NegativeAmountException negativeAmountException) {
            if (amountToWithdraw.isNegative()) {
                return SUCCESS;
            } else {
                return FAILURE;
            }
        }
        if (amountToWithdraw.greaterThan(balance)) {
            return FAILURE;
        }
        if (amountToWithdraw.isNegative()) {
            return FAILURE;
        }
        if (correctResult.equals(actualResultingBalance)) {
            return SUCCESS;
        } else {
            return FAILURE;
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -