Преглед на файлове

externalised object model

Grega Bremec преди 2 години
родител
ревизия
a408e69b3c

+ 5 - 0
pom.xml

@@ -57,6 +57,11 @@
       <version>1.4.18.redhat-00001</version>
       <scope>test</scope>
     </dependency>
+    <dependency>
+      <groupId>com.redhat.training</groupId>
+      <artifactId>claims-model</artifactId>
+      <version>1.0.0-SNAPSHOT</version>
+    </dependency>
   </dependencies>
   <build>
     <plugins>

+ 0 - 60
src/main/java/com/redhat/training/claims/model/Claim.java

@@ -1,60 +0,0 @@
-package com.redhat.training.claims.model;
-
-import java.util.ArrayList;
-import java.util.Date;
-
-public class Claim {
-    private int id;
-    private String reason;
-    private Date dateOfEvent;
-    private Date dateFiled;
-    private double amount;
-    private Vehicle vehicle;
-    private ArrayList<Person> involvedPersons;
-    public Claim() {
-        this.involvedPersons = new ArrayList<Person>();
-    }
-    public int getId() {
-        return id;
-    }
-    public void setId(int id) {
-        this.id = id;
-    }
-    public Date getDateOfEvent() {
-        return dateOfEvent;
-    }
-    public void setDateOfEvent(Date dateOfEvent) {
-        this.dateOfEvent = dateOfEvent;
-    }
-    public Date getDateFiled() {
-        return dateFiled;
-    }
-    public void setDateFiled(Date dateFiled) {
-        this.dateFiled = dateFiled;
-    }
-    public ArrayList<Person> getInvolvedPersons() {
-        return involvedPersons;
-    }
-    public void setInvolvedPersons(ArrayList<Person> involvedPersons) {
-        this.involvedPersons = involvedPersons;
-    }
-    public String getReason() {
-        return reason;
-    }
-    public void setReason(String reason) {
-        this.reason = reason;
-    }
-    public double getAmount() {
-        return amount;
-    }
-    public void setAmount(double amount) {
-        this.amount = amount;
-    }
-    public Vehicle getVehicle() {
-        return vehicle;
-    }
-    public void setVehicle(Vehicle vehicle) {
-        this.vehicle = vehicle;
-    }
-    
-}

+ 0 - 27
src/main/java/com/redhat/training/claims/model/ClaimResults.java

@@ -1,27 +0,0 @@
-package com.redhat.training.claims.model;
-
-import java.util.ArrayList;
-
-public class ClaimResults {
-    private int claimId;
-    private boolean approved;
-    private ArrayList<String> reasons;
-    public int getClaimId() {
-        return claimId;
-    }
-    public void setClaimId(int claimId) {
-        this.claimId = claimId;
-    }
-    public boolean isApproved() {
-        return approved;
-    }
-    public void setApproved(boolean approved) {
-        this.approved = approved;
-    }
-    public ArrayList<String> getReasons() {
-        return reasons;
-    }
-    public void setReasons(ArrayList<String> reasons) {
-        this.reasons = reasons;
-    }
-}

+ 0 - 19
src/main/java/com/redhat/training/claims/model/Claimant.java

@@ -1,19 +0,0 @@
-package com.redhat.training.claims.model;
-
-import java.util.ArrayList;
-
-public class Claimant extends Person {
-    private ArrayList<Claim> claims;
-
-    public Claimant() {
-        this.claims = new ArrayList<Claim>();
-    }
-
-    public ArrayList<Claim> getClaims() {
-        return claims;
-    }
-
-    public void setClaims(ArrayList<Claim> claims) {
-        this.claims = claims;
-    }
-}

+ 0 - 6
src/main/java/com/redhat/training/claims/model/Gender.java

@@ -1,6 +0,0 @@
-package com.redhat.training.claims.model;
-
-public enum Gender {
-    MALE,
-    FEMALE;
-}

+ 0 - 28
src/main/java/com/redhat/training/claims/model/Person.java

@@ -1,28 +0,0 @@
-package com.redhat.training.claims.model;
-
-import java.util.Date;
-
-public class Person {
-    private String name;
-    private Date birthdate;
-    private Gender gender;
-
-    public String getName() {
-        return name;
-    }
-    public void setName(String name) {
-        this.name = name;
-    }
-    public Date getBirthdate() {
-        return birthdate;
-    }
-    public void setBirthdate(Date birthdate) {
-        this.birthdate = birthdate;
-    }
-    public Gender getGender() {
-        return gender;
-    }
-    public void setGender(Gender gender) {
-        this.gender = gender;
-    }
-}

+ 0 - 56
src/main/java/com/redhat/training/claims/model/Vehicle.java

@@ -1,56 +0,0 @@
-package com.redhat.training.claims.model;
-
-import java.util.Date;
-
-public class Vehicle {
-    private String vin;
-    private String mark;
-    private String model;
-    private Date productionDate;
-    private String registrationNumber;
-    private Person lastKnownOwner;
-    public String getVin() {
-        return vin;
-    }
-    public void setVin(String vin) {
-        this.vin = vin;
-    }
-    public Person getLastKnownOwner() {
-        return lastKnownOwner;
-    }
-    public void setLastKnownOwner(Person lastKnownOwner) {
-        this.lastKnownOwner = lastKnownOwner;
-    }
-    private int mileage;
-    public String getMark() {
-        return mark;
-    }
-    public void setMark(String mark) {
-        this.mark = mark;
-    }
-    public String getModel() {
-        return model;
-    }
-    public void setModel(String model) {
-        this.model = model;
-    }
-    public Date getProductionDate() {
-        return productionDate;
-    }
-    public void setProductionDate(Date productionDate) {
-        this.productionDate = productionDate;
-    }
-    public String getRegistrationNumber() {
-        return registrationNumber;
-    }
-    public void setRegistrationNumber(String registrationNumber) {
-        this.registrationNumber = registrationNumber;
-    }
-    public int getMileage() {
-        return mileage;
-    }
-    public void setMileage(int mileage) {
-        this.mileage = mileage;
-    }
-    
-}

+ 3 - 3
src/main/resources/com/redhat/training/claims/sanity.drl

@@ -3,7 +3,7 @@ package com.redhat.training.claims
 import com.redhat.training.claims.model.*
 
 query "Get ClaimResults"
-    cr: ClaimResult()
+    cr: ClaimResults()
 end
 
 rule "Check whether Claimant is not Involved"
@@ -13,7 +13,7 @@ when
     claim: Claim(!(involvedPersons contains claimant))
     Claimant(this == claimant, claims contains claim)
 then
-    ClaimResult r = new ClaimResult();
+    ClaimResults r = new ClaimResults();
     r.setClaimId(claim.getId());
     r.setApproved(false);
     r.getReasons().add("Can't file claim on behalf of someone else.");
@@ -29,7 +29,7 @@ when
     claim: Claim(involvedPersons contains claimant)
     Claimant(this == claimant, claims contains claim)
 then
-    ClaimResult r = new ClaimResult();
+    ClaimResults r = new ClaimResults();
     r.setClaimId(claim.getId());
     r.getReasons().add("Claim owner properly listed as involved.");
     insert(r);

+ 11 - 1
src/test/java/com/redhat/training/claims/ClaimantInvolvedTest.java

@@ -1,6 +1,6 @@
 package com.redhat.training.claims;
 
-import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
 import java.util.ArrayList;
@@ -83,6 +83,16 @@ public class ClaimantInvolvedTest {
         session.insert(cl);
 
         session.fireAllRules();
+
+        ArrayList<ClaimResults> crs = new ArrayList<ClaimResults>();
+        QueryResults qr = session.getQueryResults("Get ClaimResults");
+        for (QueryResultsRow qrr : qr) {
+            ClaimResults cr = (ClaimResults)qrr.get("cr");
+            crs.add(cr);
+        }
+        assertTrue("Unexpected number of claim results", crs.size() == 1);
+        assertFalse(crs.get(0).isApproved());
+        assertTrue("Expected reason not in claim result", crs.get(0).getReasons().contains("Can't file claim on behalf of someone else."));
     }
 
     @Test