Skip to content

Commit 98a8a88

Browse files
committed
adds get name incassandra
1 parent 7dc0be3 commit 98a8a88

File tree

1 file changed

+20
-11
lines changed
  • cassandra-driver/src/main/java/org/jnosql/diana/cassandra/column

1 file changed

+20
-11
lines changed

cassandra-driver/src/main/java/org/jnosql/diana/cassandra/column/QueryUtils.java

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ private static void insertUDT(UDT udt, String keyspace, Session session, Insert
8686

8787
Iterable elements = Iterable.class.cast(udt.get());
8888
Object udtValue = getUdtValue(userType, elements);
89-
insert.value(udt.getName(), udtValue);
89+
insert.value(getName(udt), udtValue);
9090
}
9191

9292
private static Object getUdtValue(UserType userType, Iterable elements) {
@@ -98,7 +98,7 @@ private static Object getUdtValue(UserType userType, Iterable elements) {
9898
Column column = Column.class.cast(object);
9999
Object convert = ValueUtil.convert(column.getValue());
100100
TypeCodec<Object> objectTypeCodec = CodecRegistry.DEFAULT_INSTANCE.codecFor(convert);
101-
udtValue.set(column.getName(), convert, objectTypeCodec);
101+
udtValue.set(getName(column), convert, objectTypeCodec);
102102

103103
} else if (Iterable.class.isInstance(object)) {
104104
udtValues.add(getUdtValue(userType, Iterable.class.cast(Iterable.class.cast(object))));
@@ -115,9 +115,9 @@ private static void insertSingleField(Column column, Insert insert) {
115115
Object value = column.get();
116116
try {
117117
CodecRegistry.DEFAULT_INSTANCE.codecFor(value);
118-
insert.value(column.getName(), value);
118+
insert.value(getName(column), value);
119119
} catch (CodecNotFoundException exp) {
120-
insert.value(column.getName(), ValueUtil.convert(column.getValue()));
120+
insert.value(getName(column), ValueUtil.convert(column.getValue()));
121121
}
122122

123123

@@ -165,25 +165,25 @@ private static void createClause(Optional<ColumnCondition> columnConditionOption
165165
Object value = column.getValue().get();
166166
switch (condition) {
167167
case EQUALS:
168-
clauses.add(QueryBuilder.eq(column.getName(), value));
168+
clauses.add(QueryBuilder.eq(getName(column), value));
169169
return;
170170
case GREATER_THAN:
171-
clauses.add(QueryBuilder.gt(column.getName(), value));
171+
clauses.add(QueryBuilder.gt(getName(column), value));
172172
return;
173173
case GREATER_EQUALS_THAN:
174-
clauses.add(QueryBuilder.gte(column.getName(), value));
174+
clauses.add(QueryBuilder.gte(getName(column), value));
175175
return;
176176
case LESSER_THAN:
177-
clauses.add(QueryBuilder.lt(column.getName(), value));
177+
clauses.add(QueryBuilder.lt(getName(column), value));
178178
return;
179179
case LESSER_EQUALS_THAN:
180-
clauses.add(QueryBuilder.lte(column.getName(), value));
180+
clauses.add(QueryBuilder.lte(getName(column), value));
181181
return;
182182
case IN:
183-
clauses.add(QueryBuilder.in(column.getName(), getIinValue(value)));
183+
clauses.add(QueryBuilder.in(getName(column), getIinValue(value)));
184184
return;
185185
case LIKE:
186-
clauses.add(QueryBuilder.like(column.getName(), value));
186+
clauses.add(QueryBuilder.like(getName(column), value));
187187
return;
188188
case AND:
189189
for (ColumnCondition cc : column.get(new TypeReference<List<ColumnCondition>>() {
@@ -198,6 +198,15 @@ private static void createClause(Optional<ColumnCondition> columnConditionOption
198198
}
199199
}
200200

201+
private static String getName(Column column) {
202+
203+
String name = column.getName();
204+
if (name.charAt(0) == '_') {
205+
return "\"" + name + "\"";
206+
}
207+
return name;
208+
}
209+
201210
private static Object[] getIinValue(Object value) {
202211
if (Iterable.class.isInstance(value)) {
203212
Iterable values = Iterable.class.cast(value);

0 commit comments

Comments
 (0)