本文整理汇总了Java中org.apache.olingo.commons.api.data.ValueType.COLLECTION_COMPLEX属性的典型用法代码示例。如果您正苦于以下问题:Java ValueType.COLLECTION_COMPLEX属性的具体用法?Java ValueType.COLLECTION_COMPLEX怎么用?Java ValueType.COLLECTION_COMPLEX使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类org.apache.olingo.commons.api.data.ValueType
的用法示例。
在下文中一共展示了ValueType.COLLECTION_COMPLEX属性的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createPropertyList
@SuppressWarnings("unchecked")
private Property createPropertyList(String name, List<Object> valueObject,
EdmStructuredType structuredType) {
ValueType valueType;
EdmElement property = structuredType.getProperty(name);
EdmTypeKind propertyKind = property.getType().getKind();
if (propertyKind == EdmTypeKind.COMPLEX) {
valueType = ValueType.COLLECTION_COMPLEX;
} else {
valueType = ValueType.COLLECTION_PRIMITIVE;
}
List<Object> properties = new ArrayList<>();
for (Object value : valueObject) {
if (value instanceof Map) {
properties.add(createComplexValue((Map<String, Object>) value, property));
} else {
properties.add(value);
}
}
return new Property(null, name, valueType, properties);
}
示例2: complexCollectionAction
protected static Property complexCollectionAction(final String name, final Map<String, Parameter> parameters)
throws DataProviderException {
if ("UARTCollCTTwoPrimParam".equals(name)) {
List<ComplexValue> complexCollection = new ArrayList<ComplexValue>();
final Parameter paramInt16 = parameters.get("ParameterInt16");
final Short number = paramInt16 == null || paramInt16.isNull() ? 0 : (Short) paramInt16.asPrimitive();
if (number >= 1) {
complexCollection.add(createCTTwoPrimComplexProperty(null, (short) 16, "Test123").asComplex());
}
if (number >= 2) {
complexCollection.add(createCTTwoPrimComplexProperty(null, (short) 17, "Test456").asComplex());
}
if (number >= 3) {
complexCollection.add(createCTTwoPrimComplexProperty(null, (short) 18, "Test678").asComplex());
}
return new Property(null, name, ValueType.COLLECTION_COMPLEX, complexCollection);
}
throw new DataProviderException("Action " + name + " is not yet implemented.",
HttpStatusCode.NOT_IMPLEMENTED);
}
示例3: createComplexCollection
protected static Property createComplexCollection(final String name,
final List<Property>... propertiesList) {
List<ComplexValue> complexCollection = new ArrayList<ComplexValue>();
for (final List<Property> properties : propertiesList) {
ComplexValue complexValue = new ComplexValue();
complexValue.getValue().addAll(properties);
complexCollection.add(complexValue);
}
return new Property(null, name, ValueType.COLLECTION_COMPLEX, complexCollection);
}
示例4: createComplexDerievedCollection
private Property createComplexDerievedCollection(final String name,
String type, final List<ComplexValue> list) {
List<ComplexValue> complexCollection = new ArrayList<ComplexValue>();
complexCollection.addAll(list);
Property property = new Property(type, name, ValueType.COLLECTION_COMPLEX, complexCollection);
createOperations(name, type, property);
return property;
}
示例5: createComplexCollection
protected static Property createComplexCollection(final String name,
String type, final List<Property>... propertiesList) {
List<ComplexValue> complexCollection = new ArrayList<ComplexValue>();
for (final List<Property> properties : propertiesList) {
ComplexValue complexValue = new ComplexValue();
complexValue.getValue().addAll(properties);
complexCollection.add(complexValue);
}
Property property = new Property(type, name, ValueType.COLLECTION_COMPLEX, complexCollection);
createOperations(name, type, property);
return property;
}
示例6: getValueType
private ValueType getValueType(final EdmType edmType, final boolean isCollection) {
if (edmType instanceof EdmPrimitiveType) {
if (edmType instanceof EdmEnumType) {
return isCollection ? ValueType.COLLECTION_ENUM : ValueType.ENUM;
} else {
return isCollection ? ValueType.COLLECTION_PRIMITIVE : ValueType.PRIMITIVE;
}
} else if (edmType instanceof EdmComplexType) {
return isCollection ? ValueType.COLLECTION_COMPLEX : ValueType.COMPLEX;
} else {
return ValueType.PRIMITIVE;
}
}
示例7: createComplexCollection
public static Property createComplexCollection(final String name, final String type,
final List<Property>... propertiesList) {
List<ComplexValue> complexCollection = new ArrayList<ComplexValue>();
for (final List<Property> properties : propertiesList) {
ComplexValue complexValue = new ComplexValue();
complexValue.getValue().addAll(properties);
complexCollection.add(complexValue);
}
return new Property(type, name, ValueType.COLLECTION_COMPLEX, complexCollection);
}
示例8: updateValuable
private void updateValuable(final Valuable propertyResource, final ClientValuable odataValuable) {
final Object propertyValue = getValue(odataValuable.getValue());
if (odataValuable.hasPrimitiveValue()) {
propertyResource.setType(odataValuable.getPrimitiveValue().getTypeName());
propertyResource.setValue(
propertyValue instanceof Geospatial ? ValueType.GEOSPATIAL : ValueType.PRIMITIVE,
propertyValue);
} else if (odataValuable.hasEnumValue()) {
propertyResource.setType(odataValuable.getEnumValue().getTypeName());
propertyResource.setValue(ValueType.ENUM, propertyValue);
} else if (odataValuable.hasComplexValue()) {
propertyResource.setType(odataValuable.getComplexValue().getTypeName());
propertyResource.setValue(ValueType.COMPLEX, propertyValue);
} else if (odataValuable.hasCollectionValue()) {
final ClientCollectionValue<ClientValue> collectionValue =
odataValuable.getCollectionValue();
propertyResource.setType(collectionValue.getTypeName());
final ClientValue value = collectionValue.iterator().hasNext() ? collectionValue.iterator().next() : null;
ValueType valueType = ValueType.COLLECTION_PRIMITIVE;
if (value == null) {
valueType = ValueType.COLLECTION_PRIMITIVE;
} else if (value.isPrimitive()) {
valueType = value.asPrimitive().toValue() instanceof Geospatial
? ValueType.COLLECTION_GEOSPATIAL : ValueType.COLLECTION_PRIMITIVE;
} else if (value.isEnum()) {
valueType = ValueType.COLLECTION_ENUM;
} else if (value.isComplex()) {
valueType = ValueType.COLLECTION_COMPLEX;
}
propertyResource.setValue(valueType, propertyValue);
}
}
示例9: toProperty
@SuppressWarnings("unchecked")
private static Property toProperty(
String propertyName, Object sourceValue, EdmProperty description) {
ValueType valueType;
Object value;
EdmTypeKind kind = description.getType().getKind();
switch (kind) {
case COMPLEX:
if (description.isCollection()) {
valueType = ValueType.COLLECTION_COMPLEX;
value = toCollection(
(EdmComplexType) description.getType(), sourceValue);
} else if (sourceValue instanceof List) {
valueType = ValueType.COMPLEX;
List<Map<String, Object>> list = (List<Map<String, Object>>) sourceValue;
if (list.isEmpty()) {
value = null;
} else {
log.warn("Discarded all elements from list {} except first", propertyName);
value = toComplexValue(
(EdmComplexType) description.getType(), list.get(0));
}
} else {
valueType = ValueType.COMPLEX;
value = toComplexValue(
(EdmComplexType) description.getType(), (Map<String, Object>) sourceValue);
}
break;
case PRIMITIVE:
valueType = ValueType.PRIMITIVE;
if (description.getType() instanceof EdmBinary) {
value = toByteArray((String) sourceValue);
} else if (description.getType() instanceof EdmDateTimeOffset) {
value = toDate((String) sourceValue);
} else if (description.getType() instanceof EdmGeographyPoint) {
value = toPoint((Map<String, Double>) sourceValue);
} else {
value = sourceValue;
}
break;
default:
throw new UnsupportedOperationException("Cannot convert from EdmTypeKind " + kind);
}
return new Property(null, propertyName, valueType, value);
}
示例10: fromCollection
private void fromCollection(final Valuable valuable, final XMLEventReader reader, final StartElement start,
final EdmTypeInfo typeInfo) throws XMLStreamException, EdmPrimitiveTypeException {
List<Object> values = new ArrayList<Object>();
ValueType valueType = ValueType.COLLECTION_PRIMITIVE;
final EdmTypeInfo type = typeInfo == null ? null :
new EdmTypeInfo.Builder().setTypeExpression(typeInfo.getFullQualifiedName().toString()).build();
boolean foundEndProperty = false;
while (reader.hasNext() && !foundEndProperty) {
final XMLEvent event = reader.nextEvent();
if (event.isStartElement()) {
switch (guessPropertyType(reader, typeInfo)) {
case COMPLEX:
final Object complexValue = fromComplexOrEnum(reader, event.asStartElement());
valueType = ValueType.COLLECTION_COMPLEX;
final Attribute typeAttr = event.asStartElement().getAttributeByName(typeQName);
final String typeAttrValue = typeAttr == null ? null : typeAttr.getValue();
final EdmTypeInfo typeInfoEle = StringUtils.isBlank(typeAttrValue) ? null :
new EdmTypeInfo.Builder().setTypeExpression(typeAttrValue).build();
if (typeInfoEle != null) {
((ComplexValue)complexValue).setTypeName(typeInfoEle.external());
}
values.add(complexValue);
break;
case ENUM:
valueType = ValueType.COLLECTION_ENUM;
values.add(fromComplexOrEnum(reader, event.asStartElement()));
break;
case PRIMITIVE:
final Object value = fromPrimitive(reader, event.asStartElement(), type);
valueType = value instanceof Geospatial ?
ValueType.COLLECTION_GEOSPATIAL : ValueType.COLLECTION_PRIMITIVE;
values.add(value);
break;
default:
// do not add null or empty values
}
}
if (event.isEndElement() && start.getName().equals(event.asEndElement().getName())) {
foundEndProperty = true;
}
}
valuable.setValue(valueType, values);
}