Skip to content

Commit b99fda8

Browse files
committed
Add TarantoolSpaceMetadata static factory methods
1 parent c9a861a commit b99fda8

5 files changed

Lines changed: 26 additions & 3 deletions

File tree

src/main/java/io/tarantool/driver/api/metadata/TarantoolSpaceMetadata.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
package io.tarantool.driver.api.metadata;
22

3+
import io.tarantool.driver.core.metadata.parsers.BaseMetadataParser;
4+
import io.tarantool.driver.core.metadata.parsers.DDLSpaceMetadataParser;
5+
import io.tarantool.driver.core.metadata.parsers.VSpaceMetadataParser;
6+
import org.msgpack.value.ArrayValue;
7+
import org.msgpack.value.Value;
8+
39
import java.io.Serializable;
410
import java.util.Map;
511
import java.util.Optional;
@@ -64,4 +70,16 @@ public interface TarantoolSpaceMetadata extends Serializable {
6470
* @return field name or null if this field not found in format metadata
6571
*/
6672
Optional<String> getFieldNameByPosition(int fieldPosition);
73+
74+
static TarantoolSpaceMetadata parseDDLSpace(Map.Entry<Value, Value> space) {
75+
return DDLSpaceMetadataParser.parse(space);
76+
}
77+
78+
static TarantoolSpaceMetadata parseVSpace(ArrayValue metadata) {
79+
return VSpaceMetadataParser.parse(metadata);
80+
}
81+
82+
static TarantoolSpaceMetadata parseSpaceFormat(ArrayValue metadata) {
83+
return BaseMetadataParser.parse(metadata);
84+
}
6785
}

src/main/java/io/tarantool/driver/core/metadata/DDLTarantoolSpaceMetadataConverter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public TarantoolMetadataContainer fromValue(Value value) {
6767

6868
ProxyTarantoolMetadataContainer proxyMetadata = new ProxyTarantoolMetadataContainer();
6969
for (Map.Entry<Value, Value> space : spacesMap.entrySet()) {
70-
TarantoolSpaceMetadata spaceMetadata = DDLSpaceMetadataParser.parse(space);
70+
TarantoolSpaceMetadata spaceMetadata = TarantoolSpaceMetadata.parseDDLSpace(space);
7171
proxyMetadata.addSpace(spaceMetadata);
7272

7373
Value indexesValue = space.getValue().asMapValue().map().get(SPACE_INDEXES_KEY);

src/main/java/io/tarantool/driver/core/metadata/TarantoolSpaceMetadataConverter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,6 @@ public class TarantoolSpaceMetadataConverter implements ValueConverter<ArrayValu
1717

1818
@Override
1919
public TarantoolSpaceMetadata fromValue(ArrayValue value) {
20-
return VSpaceMetadataParser.parse(value);
20+
return TarantoolSpaceMetadata.parseVSpace(value);
2121
}
2222
}

src/main/java/io/tarantool/driver/core/metadata/TarantoolSpaceMetadataImpl.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22

33
import io.tarantool.driver.api.metadata.TarantoolFieldMetadata;
44
import io.tarantool.driver.api.metadata.TarantoolSpaceMetadata;
5+
import io.tarantool.driver.core.metadata.parsers.BaseMetadataParser;
6+
import io.tarantool.driver.core.metadata.parsers.DDLSpaceMetadataParser;
7+
import io.tarantool.driver.core.metadata.parsers.VSpaceMetadataParser;
8+
import org.msgpack.value.ArrayValue;
9+
import org.msgpack.value.Value;
510

611
import java.util.ArrayList;
712
import java.util.List;

src/main/java/io/tarantool/driver/mappers/converters/value/RowsMetadataToTarantoolTupleResultConverter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public TarantoolResult<TarantoolTuple> fromValue(MapValue value) {
3737
Map<Value, Value> tupleMap = value.asMapValue().map();
3838
ArrayValue rawTuples = tupleMap.get(RESULT_ROWS).asArrayValue();
3939
ArrayValue rawMetadata = tupleMap.get(RESULT_META).asArrayValue();
40-
TarantoolSpaceMetadata parsedMetadata = BaseMetadataParser.parse(rawMetadata);
40+
TarantoolSpaceMetadata parsedMetadata = TarantoolSpaceMetadata.parseSpaceFormat(rawMetadata);
4141

4242
return new TarantoolTupleResultImpl(rawTuples, parsedMetadata, tupleConverter);
4343
}

0 commit comments

Comments
 (0)