public class ManagedSchemaDiff extends Object
Constructor and Description |
---|
ManagedSchemaDiff() |
Modifier and Type | Method and Description |
---|---|
protected static Map<String,Object> |
diff(List<SimpleOrderedMap<Object>> list1,
List<SimpleOrderedMap<Object>> list2) |
static Map<String,Object> |
diff(ManagedIndexSchema oldSchema,
ManagedIndexSchema newSchema)
Compute difference between two managed schemas.
|
protected static Map<String,Object> |
diff(Map<String,SimpleOrderedMap<Object>> map1,
Map<String,SimpleOrderedMap<Object>> map2)
Compute difference between two map objects with
SimpleOrderedMap as values. |
protected static List<SimpleOrderedMap<Object>> |
getCopyFieldList(ManagedIndexSchema indexSchema) |
protected static Map<String,SimpleOrderedMap<Object>> |
mapDynamicFieldToPropValues(IndexSchema.DynamicField[] dynamicFields) |
protected static Map<String,SimpleOrderedMap<Object>> |
mapFieldsToPropertyValues(Map<String,SchemaField> fields) |
protected static Map<String,SimpleOrderedMap<Object>> |
mapFieldTypesToPropValues(Map<String,FieldType> fieldTypes) |
public static Map<String,Object> diff(ManagedIndexSchema oldSchema, ManagedIndexSchema newSchema)
Output format when rendered to json will look like below:
{
"fields": {
"updated": {...},
"added": {...},
"removed": {...}
},
"fieldTypes": {
"updated": {...},
"added": {...},
"removed": {...}
},
"dynamicFields": {
"updated": {...},
"added": {...},
"removed": {...}
},
"copyFields: {
"new": [...],
"old": [...]
}
}
oldSchema
- instance of ManagedIndexSchema
newSchema
- instance of ManagedIndexSchema
protected static Map<String,Object> diff(Map<String,SimpleOrderedMap<Object>> map1, Map<String,SimpleOrderedMap<Object>> map2)
SimpleOrderedMap
as values.
Example of the output format when rendered to json
{
"updated": {
"stringField": [
{
"docValues": "false"
},
{
"docValues": "true"
}
},
"added": {
"newstringfield: {
"name": "newstringfield",
"type": "string",
.....
}
},
"removed": {
"oldstringfield": {
"name": "oldstringfield",
"type": "string",
.....
}
}
}
map1
- instance of Map with SimpleOrderedMap
elementsmap2
- instance of Map with SimpleOrderedMap
elementsprotected static Map<String,Object> diff(List<SimpleOrderedMap<Object>> list1, List<SimpleOrderedMap<Object>> list2)
protected static Map<String,SimpleOrderedMap<Object>> mapFieldsToPropertyValues(Map<String,SchemaField> fields)
protected static Map<String,SimpleOrderedMap<Object>> mapFieldTypesToPropValues(Map<String,FieldType> fieldTypes)
protected static Map<String,SimpleOrderedMap<Object>> mapDynamicFieldToPropValues(IndexSchema.DynamicField[] dynamicFields)
protected static List<SimpleOrderedMap<Object>> getCopyFieldList(ManagedIndexSchema indexSchema)
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.