void ensureVertexColumnsExist(String label, Map<String, PropertyType> columns) { Preconditions.checkArgument(!label.startsWith(VERTEX_PREFIX), "label may not start with \"%s\"", VERTEX_PREFIX); Preconditions.checkState(!isSqlgSchema(), "Schema.ensureVertexLabelPropertiesExist may not be called for \"%s\"", SQLG_SCHEMA); Optional<VertexLabel> vertexLabel = getVertexLabel(label); Preconditions.checkState(vertexLabel.isPresent(), "BUG: vertexLabel \"%s\" must exist", label); //noinspection OptionalGetWithoutIsPresent vertexLabel.get().ensurePropertiesExist(columns); }
void ensureVertexColumnsExist(String label, Map<String, PropertyType> columns) { Preconditions.checkArgument(!label.startsWith(VERTEX_PREFIX), "label may not start with \"%s\"", VERTEX_PREFIX); Preconditions.checkState(!isSqlgSchema(), "Schema.ensureVertexLabelPropertiesExist may not be called for \"%s\"", SQLG_SCHEMA); Optional<VertexLabel> vertexLabel = getVertexLabel(label); Preconditions.checkState(vertexLabel.isPresent(), "BUG: vertexLabel \"%s\" must exist", label); //noinspection OptionalGetWithoutIsPresent vertexLabel.get().ensurePropertiesExist(columns); }
public VertexLabel ensureVertexLabelExist(final String label, final Map<String, PropertyType> columns, ListOrderedSet<String> identifiers) { Objects.requireNonNull(label, "Given table must not be null"); Preconditions.checkArgument(!label.startsWith(VERTEX_PREFIX), "label may not be prefixed with \"%s\"", VERTEX_PREFIX); for (String identifier : identifiers) { Preconditions.checkState(columns.containsKey(identifier), "The identifiers must be in the specified columns. \"%s\" not found", identifier); } Optional<VertexLabel> vertexLabelOptional = this.getVertexLabel(label); if (!vertexLabelOptional.isPresent()) { this.topology.lock(); vertexLabelOptional = this.getVertexLabel(label); //noinspection OptionalIsPresent if (!vertexLabelOptional.isPresent()) { return this.createVertexLabel(label, columns, identifiers); } else { return vertexLabelOptional.get(); } } else { VertexLabel vertexLabel = vertexLabelOptional.get(); //check if all the columns are there. vertexLabel.ensurePropertiesExist(columns); return vertexLabel; } }
public VertexLabel ensureVertexLabelExist(final String label, final Map<String, PropertyType> columns, ListOrderedSet<String> identifiers) { Objects.requireNonNull(label, "Given table must not be null"); Preconditions.checkArgument(!label.startsWith(VERTEX_PREFIX), "label may not be prefixed with \"%s\"", VERTEX_PREFIX); for (String identifier : identifiers) { Preconditions.checkState(columns.containsKey(identifier), "The identifiers must be in the specified columns. \"%s\" not found", identifier); } Optional<VertexLabel> vertexLabelOptional = this.getVertexLabel(label); if (!vertexLabelOptional.isPresent()) { this.topology.lock(); vertexLabelOptional = this.getVertexLabel(label); //noinspection OptionalIsPresent if (!vertexLabelOptional.isPresent()) { return this.createVertexLabel(label, columns, identifiers); } else { return vertexLabelOptional.get(); } } else { VertexLabel vertexLabel = vertexLabelOptional.get(); //check if all the columns are there. vertexLabel.ensurePropertiesExist(columns); return vertexLabel; } }
public VertexLabel ensurePartitionedVertexLabelExist( final String label, final Map<String, PropertyType> columns, ListOrderedSet<String> identifiers, PartitionType partitionType, String partitionExpression) { Preconditions.checkState(this.sqlgGraph.getSqlDialect().supportsPartitioning()); Objects.requireNonNull(label, "Given table must not be null"); Preconditions.checkArgument(!label.startsWith(VERTEX_PREFIX), "label may not be prefixed with %s", VERTEX_PREFIX); Optional<VertexLabel> vertexLabelOptional = this.getVertexLabel(label); if (!vertexLabelOptional.isPresent()) { this.topology.lock(); vertexLabelOptional = this.getVertexLabel(label); return vertexLabelOptional.orElseGet( () -> this.createPartitionedVertexLabel(label, columns, identifiers, partitionType, partitionExpression) ); } else { VertexLabel vertexLabel = vertexLabelOptional.get(); //check if all the columns are there. vertexLabel.ensurePropertiesExist(columns); return vertexLabel; } }
public VertexLabel ensurePartitionedVertexLabelExist( final String label, final Map<String, PropertyType> columns, ListOrderedSet<String> identifiers, PartitionType partitionType, String partitionExpression) { Preconditions.checkState(this.sqlgGraph.getSqlDialect().supportsPartitioning()); Objects.requireNonNull(label, "Given table must not be null"); Preconditions.checkArgument(!label.startsWith(VERTEX_PREFIX), "label may not be prefixed with %s", VERTEX_PREFIX); Optional<VertexLabel> vertexLabelOptional = this.getVertexLabel(label); if (!vertexLabelOptional.isPresent()) { this.topology.lock(); vertexLabelOptional = this.getVertexLabel(label); return vertexLabelOptional.orElseGet( () -> this.createPartitionedVertexLabel(label, columns, identifiers, partitionType, partitionExpression) ); } else { VertexLabel vertexLabel = vertexLabelOptional.get(); //check if all the columns are there. vertexLabel.ensurePropertiesExist(columns); return vertexLabel; } }
SchemaTable table = rootSchemaTableTree.getSchemaTable(); if (label instanceof VertexLabel) { ((VertexLabel) label).ensurePropertiesExist(Maps.transformValues(properties, PropertyType::from)); } else if (label instanceof EdgeLabel) { ((EdgeLabel) label).ensurePropertiesExist(Maps.transformValues(properties, PropertyType::from));