Roles added
[staff/due1/sed-hs15-srs-purple.git] / src / main / java / ch / bfh / ti / srs / dataschema / Resource.java
index e9913eb..0b740c3 100644 (file)
@@ -7,25 +7,36 @@
  */\r
 package ch.bfh.ti.srs.dataschema;\r
 \r
  */\r
 package ch.bfh.ti.srs.dataschema;\r
 \r
-public class Resource {\r
+import java.util.UUID;\r
 \r
 \r
+public class Resource implements Modify {\r
+\r
+       private UUID id;\r
        private String name;\r
        private String type;\r
 \r
        /**\r
         * Normal constructor for new resources created in the UserController\r
        private String name;\r
        private String type;\r
 \r
        /**\r
         * Normal constructor for new resources created in the UserController\r
-        * \r
         * @param name\r
         * @param name\r
+        *            this is the name of the resource\r
         * @param type\r
         * @param type\r
+        *            this is the type for example school,meeting room...\r
         * @throws Exception\r
         * @throws Exception\r
+        *             the name of the resource can't be null\r
         */\r
 \r
         */\r
 \r
-       public Resource(String name, String type) throws Exception{\r
+       public Resource(String name, String type) throws Exception {\r
                if (name == null)\r
                        throw new IllegalArgumentException("Name must not be null");\r
 \r
                this.name = name;\r
                this.type = type;\r
                if (name == null)\r
                        throw new IllegalArgumentException("Name must not be null");\r
 \r
                this.name = name;\r
                this.type = type;\r
+\r
+               this.id = UUID.randomUUID();\r
+       }\r
+\r
+       public UUID getId() {\r
+               return id;\r
        }\r
 \r
        public String getName() {\r
        }\r
 \r
        public String getName() {\r
@@ -43,4 +54,20 @@ public class Resource {
        public void setType(String type) {\r
                this.type = type;\r
        }\r
        public void setType(String type) {\r
                this.type = type;\r
        }\r
+\r
+       public boolean isModified(Object obj) {\r
+               if (obj == this) {\r
+                       return false;\r
+               }\r
+               if (obj == null) {\r
+                       return true;\r
+               }\r
+               Resource otherResource = (Resource) obj;\r
+               return this.name != otherResource.getName() || this.type != otherResource.getType();\r
+       }\r
+\r
+       @Override\r
+       public Resource clone() throws CloneNotSupportedException {\r
+               return (Resource) super.clone();\r
+       }\r
 }\r
 }\r