public PropertyKey makeVertexIndexedUniqueKey(String name, Class datatype) { PropertyKey key = mgmt.makePropertyKey(name).dataType(datatype).cardinality(Cardinality.SINGLE).make(); mgmt.buildIndex(name,Vertex.class).addKey(key).unique().buildCompositeIndex(); return key; }
/** * Creates a new property key with default settings against the provided {@link PropertyKeyMaker}. * * @param factory PropertyKeyMaker through which the property key is created * @return A new property key * @throws IllegalArgumentException if the name is already in use or if other configured values are invalid. */ public default PropertyKey makePropertyKey(PropertyKeyMaker factory) { return factory.cardinality(defaultPropertyCardinality(factory.getName())).dataType(Object.class).make(); }
public PropertyKey makeKey(String name, Class datatype) { PropertyKey key = mgmt.makePropertyKey(name).dataType(datatype).cardinality(Cardinality.SINGLE).make(); return key; }
public TitanGraphIndex getExternalIndex(Class<? extends Element> clazz, String backingIndex) { String prefix; if (Vertex.class.isAssignableFrom(clazz)) prefix = "v"; else if (Edge.class.isAssignableFrom(clazz)) prefix = "e"; else if (TitanVertexProperty.class.isAssignableFrom(clazz)) prefix = "p"; else throw new AssertionError(clazz.toString()); String indexName = prefix+backingIndex; TitanGraphIndex index = mgmt.getGraphIndex(indexName); if (index==null) { index = mgmt.buildIndex(indexName,clazz).buildMixedIndex(backingIndex); } return index; }
public EdgeLabel makeLabel(String name) { return mgmt.makeEdgeLabel(name).make(); }
@Test(expected = IllegalArgumentException.class) public void testSettingTTLOnNonStaticVertexLabel() throws Exception { if (!features.hasCellTTL()) { throw new IllegalArgumentException(); } VertexLabel label1 = mgmt.makeVertexLabel("event").make(); mgmt.setTTL(label1, Duration.ofSeconds(42)); }
/** * Creates a new edge label with default settings against the provided {@link EdgeLabelMaker}. * * @param factory EdgeLabelMaker through which the edge label is created * @return A new edge label * @throws IllegalArgumentException if the name is already in use or if other configured values are invalid. */ public default EdgeLabel makeEdgeLabel(EdgeLabelMaker factory) { return factory.directed().make(); }
/** * Creates a new vertex label with the default settings against the provided {@link VertexLabelMaker}. * * @param factory VertexLabelMaker through which the vertex label is created * @return A new vertex label * @throws IllegalArgumentException if the name is already in use or if other configured values are invalid. */ public default VertexLabel makeVertexLabel(VertexLabelMaker factory) { return factory.make(); }
public static<V> Parameter<V> of(String key, V value) { return new Parameter(key,value); }
private IndexIdentifier(TitanIndex index) { Preconditions.checkArgument(index != null); indexName = index.name(); if (index instanceof RelationTypeIndex) relationTypeName = ((RelationTypeIndex) index).getType().name(); else relationTypeName = null; Preconditions.checkArgument(StringUtils.isNotBlank(indexName)); hashcode = new HashCodeBuilder().append(indexName).append(relationTypeName).hashCode(); }
private void createExternalIndex(PropertyKey key, Class<? extends Element> clazz, String backingIndex) { mgmt.addIndexKey(getExternalIndex(clazz,backingIndex),key); }
protected final boolean hasSingleType() { return types.length == 1 && schemaInspector.getRelationType(types[0]) != null; }
@Override public VertexLabel makeVertexLabel(VertexLabelMaker factory) { throw new IllegalArgumentException("Vertex Label with given name does not exist: " + factory.getName()); }
@Override public EdgeLabel makeEdgeLabel(EdgeLabelMaker factory) { throw new IllegalArgumentException("Edge Label with given name does not exist: " + factory.getName()); }
@Override public PropertyKey makePropertyKey(PropertyKeyMaker factory) { throw new IllegalArgumentException("Property Key with given name does not exist: " + factory.getName()); }
public PropertyKey makeVertexIndexedKey(String name, Class datatype) { PropertyKey key = mgmt.makePropertyKey(name).dataType(datatype).cardinality(Cardinality.SINGLE).make(); mgmt.buildIndex(name,Vertex.class).addKey(key).buildCompositeIndex(); return key; }
public<V> Parameter<V> getParameter(V value) { return new Parameter<V>(name,value); }
/** * Whether this query is asking for the value of an {@link com.thinkaurelius.titan.graphdb.types.system.ImplicitKey}. * </p> * Handling of implicit keys is completely distinct from "normal" query execution and handled extra * for completeness reasons. * * @param returnType * @return */ protected final boolean isImplicitKeyQuery(RelationCategory returnType) { if (returnType == RelationCategory.EDGE || types.length != 1 || !constraints.isEmpty()) return false; return schemaInspector.getRelationType(types[0]) instanceof ImplicitKey; }
@Override public Parameter read(ScanBuffer buffer) { String key = serializer.readObjectNotNull(buffer,String.class); Object value = serializer.readClassAndObject(buffer); return new Parameter(key,value); }