annotate src/main/java/org/mpi/openmind/repository/services/utils/EditIntent.java @ 66:3e4b05a6cb47

new EditIntent for saveEntity().
author casties
date Mon, 30 Jan 2017 20:32:26 +0100
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
66
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
1 package org.mpi.openmind.repository.services.utils;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
2
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
3 import java.util.HashSet;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
4 import java.util.Set;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
5
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
6 /**
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
7 * Class documenting the parts (attributes, relations) if an Entity that may be
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
8 * edited.
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
9 *
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
10 * @author casties
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
11 *
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
12 */
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
13 public class EditIntent {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
14 String modifiedEntity;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
15 Set<String> modifiedAttributes;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
16 Set<String> modifiedSourceRelations;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
17 Set<String> modifiedTargetRelations;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
18
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
19 /**
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
20 * Creates an EditIntent with the given attribute and relation names.
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
21 *
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
22 * @param modifiedEntity
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
23 * @param modifiedAttributes
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
24 * @param modifiedSourceRelations
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
25 * @param modifiedTargetRelations
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
26 */
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
27 public EditIntent(String modifiedEntity, Set<String> modifiedAttributes, Set<String> modifiedSourceRelations,
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
28 Set<String> modifiedTargetRelations) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
29 super();
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
30 this.modifiedEntity = modifiedEntity;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
31 this.modifiedAttributes = modifiedAttributes;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
32 this.modifiedSourceRelations = modifiedSourceRelations;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
33 this.modifiedTargetRelations = modifiedTargetRelations;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
34 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
35
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
36 /**
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
37 * Creates an EditIntent with the given attribute and relation names.
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
38 *
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
39 * @param modifiedEntity
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
40 * @param modifiedAttributes
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
41 * @param modifiedSourceRelations
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
42 * @param modifiedTargetRelations
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
43 */
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
44 public EditIntent(String modifiedEntity, String[] modifiedAttributes, String[] modifiedSourceRelations, String[] modifiedTargetRelations) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
45 super();
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
46 this.modifiedEntity = modifiedEntity;
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
47 this.modifiedAttributes = new HashSet<String>();
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
48 for (String s : modifiedAttributes) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
49 this.modifiedAttributes.add(s);
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
50 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
51
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
52 this.modifiedSourceRelations = new HashSet<String>();
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
53 for (String s : modifiedSourceRelations) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
54 this.modifiedSourceRelations.add(s);
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
55 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
56
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
57 this.modifiedTargetRelations = new HashSet<String>();
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
58 for (String s : modifiedTargetRelations) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
59 this.modifiedTargetRelations.add(s);
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
60 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
61 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
62
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
63 /**
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
64 * Returns if the modification of the Entity with the given name is intended.
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
65 *
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
66 * @param name
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
67 * @return
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
68 */
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
69 public boolean isEntModificationIntended(String name) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
70 return modifiedEntity.equals(name);
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
71 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
72
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
73 /**
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
74 * Returns if the modification of the Attribute with the given name is intended.
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
75 *
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
76 * @param name
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
77 * @return
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
78 */
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
79 public boolean isAttModificationIntended(String name) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
80 return modifiedAttributes.contains(name);
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
81 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
82
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
83 /**
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
84 * Returns if the modification of the Relation with the given name is intended.
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
85 *
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
86 * @param name
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
87 * @return
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
88 */
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
89 public boolean isSrcRelModificationIntended(String name) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
90 return modifiedSourceRelations.contains(name);
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
91 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
92
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
93 /**
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
94 * Returns if the modification of the Relation with the given name is intended.
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
95 *
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
96 * @param name
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
97 * @return
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
98 */
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
99 public boolean isTarRelModificationIntended(String name) {
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
100 return modifiedTargetRelations.contains(name);
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
101 }
3e4b05a6cb47 new EditIntent for saveEntity().
casties
parents:
diff changeset
102 }