protected void updateSchema(SchemaDefinition schemaDefinition) { SchemaDefinition existing = loadExistingSchema(schemaDefinition.getCollectionName()); List<FieldDefinition> fieldsToBeCreated = new ArrayList<FieldDefinition>(); for (FieldDefinition fieldDefinition : schemaDefinition.getFields()) { if (!existing.containsField(fieldDefinition.getName())) { fieldsToBeCreated.add(fieldDefinition); } } writeFieldDefinitions(fieldsToBeCreated, schemaDefinition.getCollectionName()); }
public void writeSchema(SchemaDefinition schemaDefinition) { if (isSchemaPresent(schemaDefinition.getCollectionName())) { updateSchema(schemaDefinition); return; } createSchema(schemaDefinition); }