Skip to content

Commit 1261514

Browse files
author
DvirDukhan
committed
changed property into a class template
1 parent 886bcd0 commit 1261514

File tree

4 files changed

+47
-69
lines changed

4 files changed

+47
-69
lines changed

src/main/java/com/redislabs/redisgraph/graph_entities/GraphEntity.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,12 +42,11 @@ public void setId(int id) {
4242
/**
4343
* Adds a property to the entity, by composing name, type and value to a property object
4444
* @param name
45-
* @param type
4645
* @param value
4746
*/
48-
public void addProperty(String name, ResultSetScalarTypes type, Object value){
47+
public void addProperty(String name, Object value){
4948

50-
addProperty(new Property(name, type, value));
49+
addProperty(new Property(name, value));
5150

5251
}
5352

src/main/java/com/redislabs/redisgraph/graph_entities/Property.java

Lines changed: 6 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,12 @@
77
/**
88
* A Graph entity property. Has a name, type, and value
99
*/
10-
public class Property {
10+
public class Property <T> {
1111

1212
//members
1313
private String name;
14-
private ResultSet.ResultSetScalarTypes type;
1514

16-
private Object value;
15+
private T value;
1716

1817

1918
/**
@@ -27,12 +26,10 @@ public Property() {
2726
* Parameterized constructor
2827
*
2928
* @param name
30-
* @param type
3129
* @param value
3230
*/
33-
public Property(String name, ResultSet.ResultSetScalarTypes type, Object value) {
31+
public Property(String name, T value) {
3432
this.name = name;
35-
this.type = type;
3633
this.value = value;
3734
}
3835

@@ -53,34 +50,19 @@ public void setName(String name) {
5350
this.name = name;
5451
}
5552

56-
/**
57-
* @return property type
58-
*/
59-
public ResultSet.ResultSetScalarTypes getType() {
60-
return type;
61-
}
62-
63-
/**
64-
* @param type property type to be set
65-
*/
66-
public void setType(ResultSet.ResultSetScalarTypes type) {
67-
this.type = type;
68-
}
69-
70-
7153

7254
/**
7355
* @return property value
7456
*/
75-
public Object getValue() {
57+
public T getValue() {
7658
return value;
7759
}
7860

7961

8062
/**
8163
* @param value property value to be set
8264
*/
83-
public void setValue(Object value) {
65+
public void setValue(T value) {
8466
this.value = value;
8567
}
8668

@@ -91,13 +73,12 @@ public boolean equals(Object o) {
9173
if (!(o instanceof Property)) return false;
9274
Property property = (Property) o;
9375
return Objects.equals(name, property.name) &&
94-
type == property.type &&
9576
Objects.equals(value, property.value);
9677
}
9778

9879
@Override
9980
public int hashCode() {
100-
return Objects.hash(name, type, value);
81+
return Objects.hash(name, value);
10182
}
10283

10384
/**
@@ -108,7 +89,6 @@ public int hashCode() {
10889
public String toString() {
10990
final StringBuilder sb = new StringBuilder("Property{");
11091
sb.append("name='").append(name).append('\'');
111-
sb.append(", type=").append(type);
11292
sb.append(", value=").append(value);
11393
sb.append('}');
11494
return sb.toString();

src/main/java/com/redislabs/redisgraph/impl/resultset/ResultSetImpl.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,6 @@ private void deserializeGraphEntityProperties(GraphEntity entity, List<List<Obje
199199

200200
//trimmed for getting to value using deserializeScalar
201201
List<Object> propertyScalar = rawProperty.subList(1, rawProperty.size());
202-
property.setType(getValueTypeFromObject(propertyScalar.get(0)));
203202
property.setValue(deserializeScalar(propertyScalar));
204203

205204
entity.addProperty(property);

src/test/java/com/redislabs/redisgraph/RedisGraphAPITest.java

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -203,15 +203,15 @@ public void testRecord(){
203203

204204

205205

206-
Property nameProperty = new Property("name", ResultSet.ResultSetScalarTypes.VALUE_STRING, name);
207-
Property ageProperty = new Property("age", ResultSet.ResultSetScalarTypes.VALUE_INTEGER, age);
208-
Property doubleProperty = new Property("doubleValue", ResultSet.ResultSetScalarTypes.VALUE_DOUBLE, doubleValue);
209-
Property trueBooleanProperty = new Property("boolValue", ResultSet.ResultSetScalarTypes.VALUE_BOOLEAN, true);
210-
Property falseBooleanProperty = new Property("boolValue", ResultSet.ResultSetScalarTypes.VALUE_BOOLEAN, false);
211-
Property nullProperty = new Property("nullValue", ResultSet.ResultSetScalarTypes.VALUE_NULL, null);
206+
Property nameProperty = new Property("name", name);
207+
Property ageProperty = new Property("age", age);
208+
Property doubleProperty = new Property("doubleValue", doubleValue);
209+
Property trueBooleanProperty = new Property("boolValue", true);
210+
Property falseBooleanProperty = new Property("boolValue", false);
211+
Property nullProperty = new Property("nullValue", null);
212212

213-
Property placeProperty = new Property("place", ResultSet.ResultSetScalarTypes.VALUE_STRING, place);
214-
Property sinceProperty = new Property("since", ResultSet.ResultSetScalarTypes.VALUE_INTEGER, since);
213+
Property placeProperty = new Property("place", place);
214+
Property sinceProperty = new Property("since", since);
215215

216216
Node expectedNode = new Node();
217217
expectedNode.setId(0);
@@ -223,11 +223,11 @@ public void testRecord(){
223223
expectedNode.addProperty(nullProperty);
224224
Assert.assertEquals(
225225
"Node{labels=[person], id=0, "
226-
+ "propertyMap={name=Property{name='name', type=VALUE_STRING, value=roi}, "
227-
+ "boolValue=Property{name='boolValue', type=VALUE_BOOLEAN, value=true}, "
228-
+ "doubleValue=Property{name='doubleValue', type=VALUE_DOUBLE, value=3.14}, "
229-
+ "nullValue=Property{name='nullValue', type=VALUE_NULL, value=null}, "
230-
+ "age=Property{name='age', type=VALUE_INTEGER, value=32}}}", expectedNode.toString());
226+
+ "propertyMap={name=Property{name='name', value=roi}, "
227+
+ "boolValue=Property{name='boolValue', value=true}, "
228+
+ "doubleValue=Property{name='doubleValue', value=3.14}, "
229+
+ "nullValue=Property{name='nullValue', value=null}, "
230+
+ "age=Property{name='age', value=32}}}", expectedNode.toString());
231231

232232
Edge expectedEdge = new Edge();
233233
expectedEdge.setId(0);
@@ -240,11 +240,11 @@ public void testRecord(){
240240
expectedEdge.addProperty(falseBooleanProperty);
241241
expectedEdge.addProperty(nullProperty);
242242
Assert.assertEquals("Edge{relationshipType='knows', source=0, destination=1, id=0, "
243-
+ "propertyMap={boolValue=Property{name='boolValue', type=VALUE_BOOLEAN, value=false}, "
244-
+ "place=Property{name='place', type=VALUE_STRING, value=TLV}, "
245-
+ "doubleValue=Property{name='doubleValue', type=VALUE_DOUBLE, value=3.14}, "
246-
+ "nullValue=Property{name='nullValue', type=VALUE_NULL, value=null}, "
247-
+ "since=Property{name='since', type=VALUE_INTEGER, value=2000}}}", expectedEdge.toString());
243+
+ "propertyMap={boolValue=Property{name='boolValue', value=false}, "
244+
+ "place=Property{name='place', value=TLV}, "
245+
+ "doubleValue=Property{name='doubleValue', value=3.14}, "
246+
+ "nullValue=Property{name='nullValue', value=null}, "
247+
+ "since=Property{name='since', value=2000}}}", expectedEdge.toString());
248248

249249
Assert.assertNotNull(api.query("social", "CREATE (:person{name:%s,age:%d, doubleValue:%f, boolValue:%b, nullValue:null})", name, age, doubleValue, boolValue));
250250
Assert.assertNotNull(api.query("social", "CREATE (:person{name:'amit',age:30})"));
@@ -332,9 +332,9 @@ public void testMultiThread(){
332332
mapToObj(i-> api.query("social", "MATCH (a:person)-[r:knows]->(b:person) RETURN a,r, a.age")).
333333
collect(Collectors.toList());
334334

335-
Property nameProperty = new Property("name", ResultSet.ResultSetScalarTypes.VALUE_STRING, "roi");
336-
Property ageProperty = new Property("age", ResultSet.ResultSetScalarTypes.VALUE_INTEGER, 32);
337-
Property lastNameProperty =new Property("lastName", ResultSet.ResultSetScalarTypes.VALUE_STRING, "a");
335+
Property nameProperty = new Property("name", "roi");
336+
Property ageProperty = new Property("age", 32);
337+
Property lastNameProperty =new Property("lastName", "a");
338338

339339
Node expectedNode = new Node();
340340
expectedNode.setId(0);
@@ -426,9 +426,9 @@ public void testAdditionToProcedures(){
426426
Assert.assertNotNull(api.query("social", "MATCH (a:person), (b:person) WHERE (a.name = 'roi' AND b.name='amit') CREATE (a)-[:knows]->(b)"));
427427

428428
//expected objects init
429-
Property nameProperty = new Property("name", ResultSet.ResultSetScalarTypes.VALUE_STRING, "roi");
430-
Property ageProperty = new Property("age", ResultSet.ResultSetScalarTypes.VALUE_INTEGER, 32);
431-
Property lastNameProperty =new Property("lastName", ResultSet.ResultSetScalarTypes.VALUE_STRING, "a");
429+
Property nameProperty = new Property("name", "roi");
430+
Property ageProperty = new Property("age", 32);
431+
Property lastNameProperty =new Property("lastName", "a");
432432

433433
Node expectedNode = new Node();
434434
expectedNode.setId(0);
@@ -570,7 +570,7 @@ public void testMultiExec(){
570570

571571
Assert.assertEquals(COLUMN_NODE, schemaTypes.get(0));
572572

573-
Property nameProperty = new Property("name", ResultSet.ResultSetScalarTypes.VALUE_STRING, "a");
573+
Property nameProperty = new Property("name", "a");
574574

575575
Node expectedNode = new Node();
576576
expectedNode.setId(0);
@@ -629,15 +629,15 @@ public void testContextedAPI() {
629629
int since = 2000;
630630

631631

632-
Property nameProperty = new Property("name", ResultSet.ResultSetScalarTypes.VALUE_STRING, name);
633-
Property ageProperty = new Property("age", ResultSet.ResultSetScalarTypes.VALUE_INTEGER, age);
634-
Property doubleProperty = new Property("doubleValue", ResultSet.ResultSetScalarTypes.VALUE_DOUBLE, doubleValue);
635-
Property trueBooleanProperty = new Property("boolValue", ResultSet.ResultSetScalarTypes.VALUE_BOOLEAN, true);
636-
Property falseBooleanProperty = new Property("boolValue", ResultSet.ResultSetScalarTypes.VALUE_BOOLEAN, false);
637-
Property nullProperty = new Property("nullValue", ResultSet.ResultSetScalarTypes.VALUE_NULL, null);
632+
Property nameProperty = new Property("name", name);
633+
Property ageProperty = new Property("age", age);
634+
Property doubleProperty = new Property("doubleValue", doubleValue);
635+
Property trueBooleanProperty = new Property("boolValue", true);
636+
Property falseBooleanProperty = new Property("boolValue", false);
637+
Property nullProperty = new Property("nullValue", null);
638638

639-
Property placeProperty = new Property("place", ResultSet.ResultSetScalarTypes.VALUE_STRING, place);
640-
Property sinceProperty = new Property("since", ResultSet.ResultSetScalarTypes.VALUE_INTEGER, since);
639+
Property placeProperty = new Property("place", place);
640+
Property sinceProperty = new Property("since", since);
641641

642642
Node expectedNode = new Node();
643643
expectedNode.setId(0);
@@ -765,9 +765,9 @@ public void testArraySupport() {
765765
Node expectedANode = new Node();
766766
expectedANode.setId(0);
767767
expectedANode.addLabel("person");
768-
Property aNameProperty = new Property("name", ResultSet.ResultSetScalarTypes.VALUE_STRING, "a");
769-
Property aAgeProperty = new Property("age", ResultSet.ResultSetScalarTypes.VALUE_INTEGER, 32);
770-
Property aListProperty = new Property("array", ResultSet.ResultSetScalarTypes.VALUE_ARRAY, Arrays.asList(0,1,2));
768+
Property aNameProperty = new Property("name", "a");
769+
Property aAgeProperty = new Property("age", 32);
770+
Property aListProperty = new Property("array", Arrays.asList(0,1,2));
771771
expectedANode.addProperty(aNameProperty);
772772
expectedANode.addProperty(aAgeProperty);
773773
expectedANode.addProperty(aListProperty);
@@ -776,9 +776,9 @@ public void testArraySupport() {
776776
Node expectedBNode = new Node();
777777
expectedBNode.setId(1);
778778
expectedBNode.addLabel("person");
779-
Property bNameProperty = new Property("name", ResultSet.ResultSetScalarTypes.VALUE_STRING, "b");
780-
Property bAgeProperty = new Property("age", ResultSet.ResultSetScalarTypes.VALUE_INTEGER, 30);
781-
Property bListProperty = new Property("array", ResultSet.ResultSetScalarTypes.VALUE_ARRAY, Arrays.asList(3,4,5));
779+
Property bNameProperty = new Property("name", "b");
780+
Property bAgeProperty = new Property("age", 30);
781+
Property bListProperty = new Property("array", Arrays.asList(3,4,5));
782782
expectedBNode.addProperty(bNameProperty);
783783
expectedBNode.addProperty(bAgeProperty);
784784
expectedBNode.addProperty(bListProperty);

0 commit comments

Comments
 (0)