private FieldData initializeArray(RValueExpression rvalue, FieldTreeNode refMdNode, FieldTreeNode mdNode, Path field, Path refPath) { if (rvalue.getType() == RValueExpression.RValueType._dereference) { if (!(refMdNode instanceof ArrayField)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + refPath); } } else if (rvalue.getType() != RValueExpression.RValueType._null) { Value v = rvalue.getValue(); if (!(v.getValue() instanceof ArrayNode)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + rvalue.getValue()); } } return new FieldData(field, mdNode.getType(), refPath, refMdNode == null ? null : refMdNode.getType(), rvalue, mdNode.getFullPath()); }
private FieldData initializeObject(RValueExpression rvalue, FieldTreeNode refMdNode, FieldTreeNode mdNode, Path field, Path refPath) { if (rvalue.getType() == RValueExpression.RValueType._dereference) { if (!(refMdNode instanceof ObjectField)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + refPath); } } else if (rvalue.getType() != RValueExpression.RValueType._null) { Value v = rvalue.getValue(); if (!(v.getValue() instanceof ObjectNode)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + rvalue.getValue()); } } return new FieldData(field, mdNode.getType(), refPath, refMdNode == null ? null : refMdNode.getType(), rvalue, mdNode.getFullPath()); }
private FieldData initializeObject(RValueExpression rvalue, FieldTreeNode refMdNode, FieldTreeNode mdNode, Path field, Path refPath) { if (rvalue.getType() == RValueExpression.RValueType._dereference) { if (!(refMdNode instanceof ObjectField)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + refPath); } } else if (rvalue.getType() != RValueExpression.RValueType._null) { Value v = rvalue.getValue(); if (!(v.getValue() instanceof ObjectNode)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + rvalue.getValue()); } } return new FieldData(field, mdNode.getType(), refPath, refMdNode == null ? null : refMdNode.getType(), rvalue, mdNode.getFullPath()); }
private FieldData initializeArray(RValueExpression rvalue, FieldTreeNode refMdNode, FieldTreeNode mdNode, Path field, Path refPath) { if (rvalue.getType() == RValueExpression.RValueType._dereference) { if (!(refMdNode instanceof ArrayField)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + refPath); } } else if (rvalue.getType() != RValueExpression.RValueType._null) { Value v = rvalue.getValue(); if (!(v.getValue() instanceof ArrayNode)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + rvalue.getValue()); } } return new FieldData(field, mdNode.getType(), refPath, refMdNode == null ? null : refMdNode.getType(), rvalue, mdNode.getFullPath()); }
newValue = df.value.getValue().getValue(); newValueNode = df.fieldType.toJson(factory, newValue); newValueType = df.fieldType;
private FieldData initializeObject(RValueExpression rvalue, FieldTreeNode refMdNode, FieldTreeNode mdNode, Path field, Path refPath) { if (rvalue.getType() == RValueExpression.RValueType._dereference) { if (!(refMdNode instanceof ObjectField)) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + refPath); } } else if (rvalue.getType() == RValueExpression.RValueType._value) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- " + rvalue.getValue()); } return new FieldData(field, mdNode.getType(), refPath, refMdNode == null ? null : refMdNode.getType(), rvalue, mdNode.getFullPath()); }
newValue = df.value.getValue().getValue(); newValueNode = newValue instanceof JsonNode ? (JsonNode) newValue : df.fieldType.toJson(factory, newValue); newValueType = df.fieldType;
private void initializeArrayField(FieldTreeNode context, ArrayAddExpression expr) { for (RValueExpression rvalue : expr.getValues()) { Path refPath = null; FieldTreeNode refMd = null; if (rvalue.getType() == RValueExpression.RValueType._dereference) { refPath = rvalue.getPath(); refMd = context.resolve(refPath); if (refMd == null) { throw new EvaluationError(CrudConstants.ERR_INVALID_DEREFERENCE + refPath); } } ArrayElement element = fieldMd.getElement(); validateArrayElement(element, refMd, rvalue, refPath); values.add(new RValueData(refPath, refMd == null ? null : refMd.getType(), rvalue.getValue(), rvalue.getType())); } }
newValue = df.value.getValue().getValue(); newValueNode = newValue instanceof JsonNode ? (JsonNode) newValue : df.fieldType.toJson(factory, newValue); newValueType = df.fieldType;
private void initializeArrayField(FieldTreeNode context, ArrayAddExpression expr) { for (RValueExpression rvalue : expr.getValues()) { Path refPath = null; FieldTreeNode refMd = null; if (rvalue.getType() == RValueExpression.RValueType._dereference) { refPath = rvalue.getPath(); refMd = context.resolve(refPath); if (refMd == null) { throw new EvaluationError(CrudConstants.ERR_INVALID_DEREFERENCE + refPath); } } ArrayElement element = fieldMd.getElement(); validateArrayElement(element, refMd, rvalue, refPath); values.add(new RValueData(refPath, refMd == null ? null : refMd.getType(), rvalue.getValue(), rvalue.getType())); } }
private void initializeArrayField(FieldTreeNode context, ArrayAddExpression expr) { for (RValueExpression rvalue : expr.getValues()) { Path refPath = null; FieldTreeNode refMd = null; if (rvalue.getType() == RValueExpression.RValueType._dereference) { refPath = rvalue.getPath(); refMd = context.resolve(refPath); if (refMd == null) { throw new EvaluationError(CrudConstants.ERR_INVALID_DEREFERENCE + refPath); } } ArrayElement element = fieldMd.getElement(); validateArrayElement(element, refMd, rvalue, refPath); values.add(new RValueData(refPath, refMd == null ? null : refMd.getType(), rvalue.getValue(), rvalue.getType())); } }
private void validateArrayElement(ArrayElement element, FieldTreeNode refMd, RValueExpression rvalue, Path refPath) { if (element instanceof ObjectArrayElement) { if (refMd != null && !refMd.getType().equals(element.getType())) { throw new EvaluationError(CrudConstants.ERR_INVALID_ASSIGNMENT + arrayField + " <- " + refPath); } else if (rvalue.getType() == RValueExpression.RValueType._value) { Value v = rvalue.getValue(); if (!(v.getValue() instanceof ObjectNode) && !(v.getValue() instanceof ArrayNode)) { throw new EvaluationError(CrudConstants.ERR_EXPECTED_OBJECT_VALUE + arrayField); } } } else if (refMd != null && !refMd.getType().equals(element.getType())) { throw new EvaluationError(CrudConstants.ERR_INVALID_ASSIGNMENT + arrayField + "<-" + refPath); } else if (rvalue.getType() == RValueExpression.RValueType._value) { Value v = rvalue.getValue(); if (v.getValue() instanceof ObjectNode || v.getValue() instanceof ArrayNode) { throw new EvaluationError(CrudConstants.ERR_EXPECTED_VALUE + arrayField); } } }
private void validateArrayElement(ArrayElement element, FieldTreeNode refMd, RValueExpression rvalue, Path refPath) { if (element instanceof ObjectArrayElement) { if (refMd != null && !refMd.getType().equals(element.getType())) { throw new EvaluationError(CrudConstants.ERR_INVALID_ASSIGNMENT + arrayField + " <- " + refPath); } else if (rvalue.getType() == RValueExpression.RValueType._value) { Value v = rvalue.getValue(); if (!(v.getValue() instanceof ObjectNode) && !(v.getValue() instanceof ArrayNode)) { throw new EvaluationError(CrudConstants.ERR_EXPECTED_OBJECT_VALUE + arrayField); } } } else if (refMd != null && !refMd.getType().equals(element.getType())) { throw new EvaluationError(CrudConstants.ERR_INVALID_ASSIGNMENT + arrayField + "<-" + refPath); } else if (rvalue.getType() == RValueExpression.RValueType._value) { Value v = rvalue.getValue(); if (v.getValue() instanceof ObjectNode || v.getValue() instanceof ArrayNode) { throw new EvaluationError(CrudConstants.ERR_EXPECTED_VALUE + arrayField); } } }
private FieldData initializeSimple(RValueExpression rvalue, FieldTreeNode refMdNode, FieldTreeNode mdNode, Path field, Path refPath) { if (rvalue.getType() == RValueExpression.RValueType._dereference) { if (!mdNode.getType().equals(refMdNode.getType())) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_DEREFERENCE + field + " <- " + refPath); } } else if (rvalue.getType() != RValueExpression.RValueType._null) { Value v = rvalue.getValue(); if (v.getValue() instanceof JsonNode) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- {}"); } } return new FieldData(field, mdNode.getType(), refPath, refMdNode == null ? null : refMdNode.getType(), rvalue, mdNode.getFullPath()); }
private FieldData initializeSimple(RValueExpression rvalue, FieldTreeNode refMdNode, FieldTreeNode mdNode, Path field, Path refPath) { if (rvalue.getType() == RValueExpression.RValueType._dereference) { if (!mdNode.getType().equals(refMdNode.getType())) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_DEREFERENCE + field + " <- " + refPath); } } else if (rvalue.getType() != RValueExpression.RValueType._null) { Value v = rvalue.getValue(); if (v.getValue() instanceof JsonNode) { throw new EvaluationError(CrudConstants.ERR_INCOMPATIBLE_ASSIGNMENT + field + " <- {}"); } } return new FieldData(field, mdNode.getType(), refPath, refMdNode == null ? null : refMdNode.getType(), rvalue, mdNode.getFullPath()); }
Value value = rvalue.getValue(); FieldTreeNode ftn = root.resolve(field); if (ftn == null) {
Value value = rvalue.getValue(); FieldTreeNode ftn = root.resolve(field); if (ftn == null) {