summaryrefslogtreecommitdiffstats
path: root/sandbox/rfeng/samples/mortgage/src/main/java/mortgage
diff options
context:
space:
mode:
Diffstat (limited to 'sandbox/rfeng/samples/mortgage/src/main/java/mortgage')
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/CreditCheck.java29
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/CreditCheckImpl.java32
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/Customer.java75
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/InterestRateQuote.java23
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/InterestRateQuoteImpl.java31
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/LoanApproval.java27
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/LoanApprovalImpl.java72
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageCalculator.java29
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageCalculatorImpl.java37
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageClient.java46
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/RiskAssessment.java27
-rw-r--r--sandbox/rfeng/samples/mortgage/src/main/java/mortgage/RiskAssessmentImpl.java37
12 files changed, 0 insertions, 465 deletions
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/CreditCheck.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/CreditCheck.java
deleted file mode 100644
index c5787b7819..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/CreditCheck.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package mortgage;
-
-import org.osoa.sca.annotations.Remotable;
-
-/**
- * CreditCheck interface
- */
-@Remotable
-public interface CreditCheck {
- int getCreditScore(String ssn);
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/CreditCheckImpl.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/CreditCheckImpl.java
deleted file mode 100644
index 86fe88b417..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/CreditCheckImpl.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package mortgage;
-
-import org.osoa.sca.annotations.Service;
-
-/**
- * A pojo implementation of the CreditCheck service
- */
-@Service(CreditCheck.class)
-public class CreditCheckImpl implements CreditCheck {
-
- public int getCreditScore(String ssn) {
- return (int) (700 + (Math.random() - 0.5) * 100);
- }
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/Customer.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/Customer.java
deleted file mode 100644
index a8b23c6019..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/Customer.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package mortgage;
-
-/**
- * A simple Customer object
- */
-public class Customer {
- private String ssn;
- private String firstName;
- private String lastName;
- private double monthlyIncome;
- private String state;
-
- public double getMonthlyIncome() {
- return monthlyIncome;
- }
-
- public void setMonthlyIncome(double monthlyIncome) {
- this.monthlyIncome = monthlyIncome;
- }
-
- public String getState() {
- return state;
- }
-
- public void setState(String state) {
- this.state = state;
- }
-
- public String getFirstName() {
- return firstName;
- }
-
- public void setFirstName(String firstName) {
- this.firstName = firstName;
- }
-
- public String getLastName() {
- return lastName;
- }
-
- public void setLastName(String lastName) {
- this.lastName = lastName;
- }
-
- public String getSsn() {
- return ssn;
- }
-
- public void setSsn(String ssn) {
- this.ssn = ssn;
- }
-
- public String toString() {
- return firstName + " " + lastName + "[" + ssn + "]";
- }
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/InterestRateQuote.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/InterestRateQuote.java
deleted file mode 100644
index b5bafeb204..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/InterestRateQuote.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package mortgage;
-
-public interface InterestRateQuote {
- public float getRate(String state, double loanAmount, int termInYears);
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/InterestRateQuoteImpl.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/InterestRateQuoteImpl.java
deleted file mode 100644
index 93054a2491..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/InterestRateQuoteImpl.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package mortgage;
-
-import org.osoa.sca.annotations.Service;
-
-@Service(InterestRateQuote.class)
-public class InterestRateQuoteImpl implements InterestRateQuote {
- public float getRate(String state, double loanAmount, int termInYears) {
- if (termInYears == 5)
- return 5.5f;
- else
- return 6.5f;
- }
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/LoanApproval.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/LoanApproval.java
deleted file mode 100644
index dcdad18496..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/LoanApproval.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package mortgage;
-
-/**
- * Loan Approval interface
- */
-public interface LoanApproval {
- public boolean approve(Customer customer, double loanAmount, int years);
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/LoanApprovalImpl.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/LoanApprovalImpl.java
deleted file mode 100644
index 0283e5826d..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/LoanApprovalImpl.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package mortgage;
-
-import org.osoa.sca.annotations.Property;
-import org.osoa.sca.annotations.Reference;
-import org.osoa.sca.annotations.Service;
-
-/**
- * An implementation of the LoanApproval service.
- */
-@Service(LoanApproval.class) // Service declaration
-public class LoanApprovalImpl implements LoanApproval {
- private CreditCheck[] creditCheck;
- private MortgageCalculator mortgageCalculator;
- private InterestRateQuote interestRateQuote;
-
- // Reference declaration using a protected or public field
- @Reference
- public RiskAssessment riskAssessment;
-
- private int minimumCreditScore = 650;
-
- // Property declaration using a setter method
- @Property(name = "minimumCreditScore", override = "may")
- public void setMinimumCreditScore(int minimumCreditScore) {
- this.minimumCreditScore = minimumCreditScore;
- }
-
- // Reference declaration using a setter method
- @Reference
- public void setCreditCheck(CreditCheck[] creditCheck) {
- this.creditCheck = creditCheck;
- }
-
- @Reference
- public void setInterestRateQuote(InterestRateQuote interestRateQuote) {
- this.interestRateQuote = interestRateQuote;
- }
-
- @Reference
- public void setMortgageCalculator(MortgageCalculator mortgageCalculator) {
- this.mortgageCalculator = mortgageCalculator;
- }
-
- public boolean approve(Customer customer, double loanAmount, int years) {
- int score = creditCheck[0].getCreditScore(customer.getSsn());
- if (score < minimumCreditScore) {
- return false;
- }
- float rate = interestRateQuote.getRate(customer.getState(), loanAmount, years);
- double monthlyPayment = mortgageCalculator.getMonthlyPayment(loanAmount, years, rate);
- double ratio = monthlyPayment / customer.getMonthlyIncome();
- return riskAssessment.assess(score, ratio);
- }
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageCalculator.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageCalculator.java
deleted file mode 100644
index cacd8694de..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageCalculator.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package mortgage;
-
-import org.osoa.sca.annotations.Remotable;
-
-/**
- * The Mortgage Calculator service interface.
- */
-@Remotable
-public interface MortgageCalculator {
- public double getMonthlyPayment(double principal, int years, float interestRate);
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageCalculatorImpl.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageCalculatorImpl.java
deleted file mode 100644
index c89830ca84..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageCalculatorImpl.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package mortgage;
-
-import org.osoa.sca.annotations.Service;
-
-/**
- * An implementation of the Calculator service.
- */
-@Service(MortgageCalculator.class)
-public class MortgageCalculatorImpl implements MortgageCalculator {
-
- public double getMonthlyPayment(double principal, int years, float interestRate) {
- double monthlyRate = interestRate / 12.0 / 100.0;
- double p = Math.pow(1 + monthlyRate, years * 12);
- double q = p / (p - 1);
- double monthlyPayment = principal * monthlyRate * q;
- return monthlyPayment;
- }
-
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageClient.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageClient.java
deleted file mode 100644
index 7e89ffeab6..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/MortgageClient.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package mortgage;
-
-import org.osoa.sca.CompositeContext;
-import org.osoa.sca.CurrentCompositeContext;
-
-/**
- * This client program to invoke the Mortgage LoanApproval service
- */
-public class MortgageClient {
- public static void main(String[] args) throws Exception {
-
- // Locate the service using SCA APIs
- CompositeContext context = CurrentCompositeContext.getContext();
- LoanApproval loanApplication = context.locateService(LoanApproval.class, "LoanApprovalComponent");
-
- // Create the customer
- Customer customer = new Customer();
- customer.setSsn("111-22-3333");
- customer.setFirstName("John");
- customer.setLastName("Smith");
- customer.setMonthlyIncome(5000.0d);
- customer.setState("CA");
-
- // Invoke the service
- boolean result = loanApplication.approve(customer, 200000d, 30);
- System.out.println((result ? "Approved: " : "Rejected: ") + customer);
- }
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/RiskAssessment.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/RiskAssessment.java
deleted file mode 100644
index 23c9589e85..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/RiskAssessment.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package mortgage;
-
-/**
- * Risk Assessment interface
- */
-public interface RiskAssessment {
- public boolean assess(int creditScore, double ratio);
-}
diff --git a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/RiskAssessmentImpl.java b/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/RiskAssessmentImpl.java
deleted file mode 100644
index 8144ef2a7d..0000000000
--- a/sandbox/rfeng/samples/mortgage/src/main/java/mortgage/RiskAssessmentImpl.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package mortgage;
-
-import org.osoa.sca.annotations.Service;
-
-/**
- * A pojo implementation of RiskAssessment service
- */
-@Service(RiskAssessment.class)
-public class RiskAssessmentImpl implements RiskAssessment {
- public boolean assess(int creditScore, double ratio) {
- if (creditScore >= 750)
- return ratio < 0.35;
- else if (creditScore >= 700)
- return ratio < 0.30;
- else
- return ratio < 0.25;
- }
-}