Added entities for the bayesian network upload.
authorMichele Silva <michele.silva@gmail.com>
Tue, 17 Jan 2012 20:55:52 +0000 (18:55 -0200)
committerMichele Silva <michele.silva@gmail.com>
Tue, 17 Jan 2012 20:55:52 +0000 (18:55 -0200)
src/java/org/ufcspa/simdecs/bn/entity/Answer.java [new file with mode: 0644]
src/java/org/ufcspa/simdecs/bn/entity/BayesianNetwork.java [new file with mode: 0644]
src/java/org/ufcspa/simdecs/bn/entity/Node.java [new file with mode: 0644]
src/java/org/ufcspa/simdecs/bn/entity/NodeType.java [new file with mode: 0644]
src/java/org/ufcspa/simdecs/bn/entity/Question.java [new file with mode: 0644]

diff --git a/src/java/org/ufcspa/simdecs/bn/entity/Answer.java b/src/java/org/ufcspa/simdecs/bn/entity/Answer.java
new file mode 100644 (file)
index 0000000..36c428f
--- /dev/null
@@ -0,0 +1,85 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.ufcspa.simdecs.bn.entity;
+
+import java.io.Serializable;
+import javax.persistence.*;
+
+/**
+ *
+ * @author mchelem
+ */
+@Entity
+public class Answer implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @Id
+    @GeneratedValue(strategy = GenerationType.AUTO)
+    private Long id;
+    
+    private String text;
+    
+    private float likelihood;
+    
+    @ManyToOne
+    private Question question;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getText() {
+        return text;
+    }
+
+    public void setText(String text) {
+        this.text = text;
+    }
+
+    public float getLikelihood() {
+        return likelihood;
+    }
+
+    public void setLikelihood(float likelihood) {
+        this.likelihood = likelihood;
+    }
+
+    public Question getQuestion() {
+        return question;
+    }
+
+    public void setQuestion(Question question) {
+        this.question = question;
+    }
+
+    @Override
+    public int hashCode() {
+        int hash = 0;
+        hash += (id != null ? id.hashCode() : 0);
+        return hash;
+    }
+
+    @Override
+    public boolean equals(Object object) {
+        // TODO: Warning - this method won't work in the case the id fields are not set
+        if (!(object instanceof Answer)) {
+            return false;
+        }
+        Answer other = (Answer) object;
+        if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
+            return false;
+        }
+        return true;
+    }
+
+    @Override
+    public String toString() {
+        return "org.ufcspa.simdecs.entity.Answer[ id=" + id + " ]";
+    }
+    
+}
diff --git a/src/java/org/ufcspa/simdecs/bn/entity/BayesianNetwork.java b/src/java/org/ufcspa/simdecs/bn/entity/BayesianNetwork.java
new file mode 100644 (file)
index 0000000..a17735e
--- /dev/null
@@ -0,0 +1,76 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.ufcspa.simdecs.bn.entity;
+
+import java.io.Serializable;
+import java.util.List;
+import javax.persistence.*;
+
+/**
+ *
+ * @author mchelem
+ */
+@Entity
+public class BayesianNetwork implements Serializable {    
+    private static final long serialVersionUID = 1L;
+    @Id
+    @GeneratedValue(strategy = GenerationType.AUTO)
+    private Long id;
+    
+    private String name;
+    
+    @OneToMany(cascade = javax.persistence.CascadeType.ALL, mappedBy = "bayesianNetwork")
+    private List<Node> nodes;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public List<Node> getNodes() {
+        return nodes;
+    }
+
+    public void setNodes(List<Node> nodes) {
+        this.nodes = nodes;
+    }
+
+    @Override
+    public int hashCode() {
+        int hash = 0;
+        hash += (id != null ? id.hashCode() : 0);
+        return hash;
+    }
+
+    @Override
+    public boolean equals(Object object) {
+        // TODO: Warning - this method won't work in the case the id fields are not set
+        if (!(object instanceof BayesianNetwork)) {
+            return false;
+        }
+        BayesianNetwork other = (BayesianNetwork) object;
+        if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
+            return false;
+        }
+        return true;
+    }
+
+    @Override
+    public String toString() {
+        return name;
+    }
+    
+}
diff --git a/src/java/org/ufcspa/simdecs/bn/entity/Node.java b/src/java/org/ufcspa/simdecs/bn/entity/Node.java
new file mode 100644 (file)
index 0000000..f646659
--- /dev/null
@@ -0,0 +1,116 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.ufcspa.simdecs.bn.entity;
+
+import java.io.Serializable;
+import java.util.List;
+import javax.persistence.*;
+
+/**
+ *
+ * @author mchelem
+ */
+@Entity
+public class Node implements Serializable {   
+    private static final long serialVersionUID = 1L;
+    @Id
+    @GeneratedValue(strategy = GenerationType.AUTO)
+    private Long id;
+    
+    private String name;
+    
+    private NodeType nodeType;
+    
+    private Integer time = 0;
+    
+    private Float cost = 0.0f;
+    
+    @ManyToOne
+    private BayesianNetwork bayesianNetwork;
+    
+    @OneToMany(cascade = javax.persistence.CascadeType.ALL, mappedBy = "node")
+    private List<Question> questions;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public NodeType getNodeType() {
+        return nodeType;
+    }
+
+    public void setNodeType(NodeType nodeType) {
+        this.nodeType = nodeType;
+    }
+
+    public Integer getTime() {
+        return time;
+    }
+
+    public void setTime(Integer time) {
+        this.time = time;
+    }
+
+    public float getCost() {
+        return cost;
+    }
+
+    public void setCost(float cost) {
+        this.cost = cost;
+    }
+
+    public BayesianNetwork getBayesianNetwork() {
+        return bayesianNetwork;
+    }
+
+    public void setBayesianNetwork(BayesianNetwork bayesianNetwork) {
+        this.bayesianNetwork = bayesianNetwork;
+    }
+
+    public List<Question> getQuestions() {
+        return questions;
+    }
+
+    public void setQuestions(List<Question> questions) {
+        this.questions = questions;
+    }    
+
+    @Override
+    public int hashCode() {
+        int hash = 0;
+        hash += (getId() != null ? getId().hashCode() : 0);
+        return hash;
+    }
+
+    @Override
+    public boolean equals(Object object) {
+        // TODO: Warning - this method won't work in the case the id fields are not set
+        if (!(object instanceof Node)) {
+            return false;
+        }
+        Node other = (Node) object;
+        if ((this.getId() == null && other.getId() != null) || (this.getId() != null && !this.id.equals(other.id))) {
+            return false;
+        }
+        return true;
+    }
+
+    @Override
+    public String toString() {
+        return "org.ufcspa.simdecs.entity.Node[ id=" + getId() + " ]";
+    }
+}
diff --git a/src/java/org/ufcspa/simdecs/bn/entity/NodeType.java b/src/java/org/ufcspa/simdecs/bn/entity/NodeType.java
new file mode 100644 (file)
index 0000000..3ca294c
--- /dev/null
@@ -0,0 +1,11 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.ufcspa.simdecs.bn.entity;
+
+/**
+ *
+ * @author mchelem
+ */
+public enum NodeType {Complementar, Essencial, Excludente, Trigger}
diff --git a/src/java/org/ufcspa/simdecs/bn/entity/Question.java b/src/java/org/ufcspa/simdecs/bn/entity/Question.java
new file mode 100644 (file)
index 0000000..daf27e3
--- /dev/null
@@ -0,0 +1,87 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package org.ufcspa.simdecs.bn.entity;
+
+import java.io.Serializable;
+import java.util.List;
+import javax.persistence.*;
+
+/**
+ *
+ * @author mchelem
+ */
+@Entity
+public class Question implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @Id
+    @GeneratedValue(strategy = GenerationType.AUTO)
+    private Long id;
+    
+    private String text;
+    
+    @OneToMany(cascade = javax.persistence.CascadeType.ALL, mappedBy = "question")
+    private List<Answer> answers;
+    
+    @ManyToOne
+    private Node node;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public String getText() {
+        return text;
+    }
+
+    public void setText(String text) {
+        this.text = text;
+    }
+
+    public List<Answer> getAnswers() {
+        return answers;
+    }
+
+    public void setAnswers(List<Answer> answers) {
+        this.answers = answers;
+    }
+
+    public Node getNode() {
+        return node;
+    }
+
+    public void setNode(Node node) {
+        this.node = node;
+    }
+
+    @Override
+    public int hashCode() {
+        int hash = 0;
+        hash += (id != null ? id.hashCode() : 0);
+        return hash;
+    }
+
+    @Override
+    public boolean equals(Object object) {
+        // TODO: Warning - this method won't work in the case the id fields are not set
+        if (!(object instanceof Question)) {
+            return false;
+        }
+        Question other = (Question) object;
+        if ((this.id == null && other.id != null) || (this.id != null && !this.id.equals(other.id))) {
+            return false;
+        }
+        return true;
+    }
+
+    @Override
+    public String toString() {
+        return "org.ufcspa.simdecs.entity.Question[ id=" + id + " ]";
+    }
+    
+}