当前位置: 首页>>代码示例>>Java>>正文


Java EdmProperty.isPrimitive方法代码示例

本文整理汇总了Java中org.apache.olingo.commons.api.edm.EdmProperty.isPrimitive方法的典型用法代码示例。如果您正苦于以下问题:Java EdmProperty.isPrimitive方法的具体用法?Java EdmProperty.isPrimitive怎么用?Java EdmProperty.isPrimitive使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.olingo.commons.api.edm.EdmProperty的用法示例。


在下文中一共展示了EdmProperty.isPrimitive方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: writeProperties

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
@Override
protected void writeProperties(ServiceMetadata metadata, EdmStructuredType type,
        List<Property> properties, SelectOption select, JsonGenerator json)
        throws IOException, SerializerException {
    boolean all = ExpandSelectHelper.isAll(select);
    Set<String> selected = all ? new HashSet<>()
            : ExpandSelectHelper.getSelectedPropertyNames(select.getSelectItems());
    for (Property property : properties) {
        String propertyName = property.getName();
        if (all || selected.contains(propertyName)) {
            EdmProperty edmProperty = type.getStructuralProperty(propertyName);
            if (edmProperty == null) {
                edmProperty = new EdmPropertyImpl(metadata.getEdm(), new CsdlProperty()
                        .setType(getPropertyType(property.getValue())).setName(propertyName));
            }
            Set<List<String>> selectedPaths = all || edmProperty.isPrimitive() ? null
                    : ExpandSelectHelper.getSelectedPaths(select.getSelectItems(),
                            propertyName);
            writeProperty(metadata, edmProperty, property, selectedPaths, json);
        }
    }
}
 
开发者ID:Hevelian,项目名称:hevelian-olastic,代码行数:23,代码来源:ElasticODataJsonSerializer.java

示例2: writeProperties

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
@Override
protected void writeProperties(ServiceMetadata metadata, EdmStructuredType type,
        List<Property> properties, SelectOption select, String xml10InvalidCharReplacement,
        XMLStreamWriter writer) throws XMLStreamException, SerializerException {
    boolean all = ExpandSelectHelper.isAll(select);
    Set<String> selected = all ? new HashSet<>()
            : ExpandSelectHelper.getSelectedPropertyNames(select.getSelectItems());
    for (Property property : properties) {
        String propertyName = property.getName();
        if (all || selected.contains(propertyName)) {
            EdmProperty edmProperty = type.getStructuralProperty(propertyName);
            if (edmProperty == null) {
                edmProperty = new EdmPropertyImpl(metadata.getEdm(), new CsdlProperty()
                        .setType(getPropertyType(property.getValue())).setName(propertyName));
            }
            Set<List<String>> selectedPaths = all || edmProperty.isPrimitive() ? null
                    : ExpandSelectHelper.getSelectedPaths(select.getSelectItems(),
                            propertyName);
            writeProperty(metadata, edmProperty, property, selectedPaths,
                    xml10InvalidCharReplacement, writer);
        }
    }
}
 
开发者ID:Hevelian,项目名称:hevelian-olastic,代码行数:24,代码来源:ElasticODataXmlSerializer.java

示例3: createProperty

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
private Property createProperty(final EdmProperty edmProperty, final String propertyName)
    throws DataProviderException {
  Property newProperty;

  if (edmProperty.isPrimitive()) {
    newProperty = edmProperty.isCollection() ? DataCreator.createPrimitiveCollection(propertyName)
        : DataCreator.createPrimitive(propertyName, null);
  } else if (edmProperty.isCollection()) {
    @SuppressWarnings("unchecked")
    Property newProperty2 = DataCreator.createComplexCollection(propertyName);
    newProperty = newProperty2;
  } else {
    newProperty = DataCreator.createComplex(propertyName);
    createProperties((EdmComplexType) edmProperty.getType(), newProperty.asComplex().getValue());
  }

  return newProperty;
}
 
开发者ID:RedHelixOrg,项目名称:RedHelix-1,代码行数:19,代码来源:DataProvider.java

示例4: createProperty

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
private Property createProperty(final EdmProperty edmProperty, final String propertyName)
    throws DataProviderException {
  final EdmType type = edmProperty.getType();
  Property newProperty;
  if (edmProperty.isPrimitive()
      || type.getKind() == EdmTypeKind.ENUM || type.getKind() == EdmTypeKind.DEFINITION) {
    newProperty = edmProperty.isCollection() ?
        DataCreator.createPrimitiveCollection(propertyName) :
        DataCreator.createPrimitive(propertyName, null);
  } else {
    if (edmProperty.isCollection()) {
      @SuppressWarnings("unchecked")
      Property newProperty2 = DataCreator.createComplexCollection(propertyName, 
          edmProperty.getType().getFullQualifiedName().getFullQualifiedNameAsString());
      newProperty = newProperty2;
    } else {
      newProperty = DataCreator.createComplex(propertyName,
          edmProperty.getType().getFullQualifiedName().getFullQualifiedNameAsString());
      createProperties((EdmComplexType) type, newProperty.asComplex().getValue());
    }
  }
  return newProperty;
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:24,代码来源:DataProvider.java

示例5: writeProperties

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
protected void writeProperties(final ServiceMetadata metadata, final EdmStructuredType type,
    final List<Property> properties,
    final SelectOption select, final JsonGenerator json)
    throws IOException, SerializerException {
  final boolean all = ExpandSelectHelper.isAll(select);
  final Set<String> selected = all ? new HashSet<String>() :
      ExpandSelectHelper.getSelectedPropertyNames(select.getSelectItems());
  for (final String propertyName : type.getPropertyNames()) {
    if (all || selected.contains(propertyName)) {
      final EdmProperty edmProperty = type.getStructuralProperty(propertyName);
      final Property property = findProperty(propertyName, properties);
      final Set<List<String>> selectedPaths = all || edmProperty.isPrimitive() ? null :
          ExpandSelectHelper.getSelectedPaths(select.getSelectItems(), propertyName);
      writeProperty(metadata, edmProperty, property, selectedPaths, json);
    }
  }
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:18,代码来源:ODataJsonSerializer.java

示例6: writeProperties

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
protected void writeProperties(final ServiceMetadata metadata, final EdmStructuredType type,
    final List<Property> properties,
    final SelectOption select, final JsonGenerator json)
    throws IOException, SerializerException {
  final boolean all = ExpandSelectHelper.isAll(select);
  final Set<String> selected = all ? new HashSet<String>() : ExpandSelectHelper.getSelectedPropertyNames(select
      .getSelectItems());
  for (final String propertyName : type.getPropertyNames()) {
    if ((all || selected.contains(propertyName)) && !properties.isEmpty()) {
      final EdmProperty edmProperty = type.getStructuralProperty(propertyName);
      final Property property = findProperty(propertyName, properties);
      final Set<List<String>> selectedPaths = all || edmProperty.isPrimitive() ? null : ExpandSelectHelper
          .getSelectedPaths(select.getSelectItems(), propertyName);
      writeProperty(metadata, edmProperty, property, selectedPaths, json);
    }
  }
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:18,代码来源:JsonDeltaSerializerWithNavigations.java

示例7: writeProperties

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
protected void writeProperties(final ServiceMetadata metadata, final EdmStructuredType type,
    final List<Property> properties,
    final SelectOption select, final JsonGenerator json)
    throws IOException, SerializerException {
  final boolean all = ExpandSelectHelper.isAll(select);
  final Set<String> selected = all ? new HashSet<String>() : ExpandSelectHelper.getSelectedPropertyNames(select
      .getSelectItems());
  for (final String propertyName : type.getPropertyNames()) {
    if (all || selected.contains(propertyName)) {
      final EdmProperty edmProperty = type.getStructuralProperty(propertyName);
      final Property property = findProperty(propertyName, properties);
      final Set<List<String>> selectedPaths = all || edmProperty.isPrimitive() ? null : ExpandSelectHelper
          .getSelectedPaths(select.getSelectItems(), propertyName);
      writeProperty(metadata, edmProperty, property, selectedPaths, json);
    }
  }
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:18,代码来源:JsonDeltaSerializer.java

示例8: writeProperties

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
protected void writeProperties(final ServiceMetadata metadata, final EdmStructuredType type,
    final List<Property> properties, final SelectOption select, final String xml10InvalidCharReplacement, 
    final XMLStreamWriter writer) throws XMLStreamException, SerializerException {
  final boolean all = ExpandSelectHelper.isAll(select);
  final Set<String> selected = all ? new HashSet<String>() :
      ExpandSelectHelper.getSelectedPropertyNames(select.getSelectItems());
  for (final String propertyName : type.getPropertyNames()) {
    if (all || selected.contains(propertyName)) {
      final EdmProperty edmProperty = type.getStructuralProperty(propertyName);
      final Property property = findProperty(propertyName, properties);
      final Set<List<String>> selectedPaths = all || edmProperty.isPrimitive() ? null :
          ExpandSelectHelper.getSelectedPaths(select.getSelectItems(), propertyName);
      writeProperty(metadata, edmProperty, property, selectedPaths, xml10InvalidCharReplacement, writer);
    }
  }
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:17,代码来源:ODataXmlSerializer.java

示例9: updateProperty

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
public void updateProperty(final EdmProperty edmProperty, Property property,
    final Property newProperty, final boolean patch) throws DataProviderException {
  if (edmProperty.isPrimitive()) {
    if (newProperty != null || !patch) {
      final Object value = newProperty == null ? null : newProperty.getValue();
      updatePropertyValue(property, value);
    }
  } else if (edmProperty.isCollection()) {
    // Updating collection properties means replacing all entries with the given ones.
    property.asCollection().clear();

    if (newProperty != null) {
      if (edmProperty.getType().getKind() == EdmTypeKind.COMPLEX) {
        // Complex type
        final List<ComplexValue> complexValues = (List<ComplexValue>) newProperty.asCollection();

        // Create each complex value
        for (final ComplexValue complexValue : complexValues) {
          ((List<ComplexValue>) property.asCollection())
              .add(createComplexValue(edmProperty, complexValue, patch));
        }
      } else {
        // Primitive type
        final List<Object> values = (List<Object>) newProperty.asCollection();
        ((List<Object>) property.asCollection()).addAll(values);
      }
    }
  } else {
    final EdmComplexType type = (EdmComplexType) edmProperty.getType();
    for (final String propertyName : type.getPropertyNames()) {
      final List<Property> newProperties = newProperty == null || newProperty.asComplex() == null
          ? null : newProperty.asComplex().getValue();
      updateProperty(type.getStructuralProperty(propertyName),
          findProperty(propertyName, property.asComplex().getValue()),
          newProperties == null ? null : findProperty(propertyName, newProperties), patch);
    }
  }
}
 
开发者ID:RedHelixOrg,项目名称:RedHelix-1,代码行数:40,代码来源:DataProvider.java

示例10: writePropertyType

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
private void writePropertyType(final EdmProperty edmProperty, JsonGenerator json)
    throws SerializerException, IOException {
  if (!isODataMetadataFull) {
    return;
  }
  String typeName = edmProperty.getName() + constants.getType();
  final EdmType type = edmProperty.getType();
  if (type.getKind() == EdmTypeKind.ENUM || type.getKind() == EdmTypeKind.DEFINITION) {
    if (edmProperty.isCollection()) {
      json.writeStringField(typeName, 
          "#Collection(" + type.getFullQualifiedName().getFullQualifiedNameAsString() + ")");
    } else {
      json.writeStringField(typeName, "#" + type.getFullQualifiedName().getFullQualifiedNameAsString());
    }
  } else if (edmProperty.isPrimitive()) {
    if (edmProperty.isCollection()) {
      json.writeStringField(typeName, "#Collection(" + type.getFullQualifiedName().getName() + ")");
    } else {
      // exclude the properties that can be heuristically determined
      if (type != EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.Boolean) &&
          type != EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.Double) &&
          type != EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.String)) {
        json.writeStringField(typeName, "#" + type.getFullQualifiedName().getName());                  
      }
    }
  } else if (type.getKind() == EdmTypeKind.COMPLEX) {
    // non-collection case written in writeComplex method directly.
    if (edmProperty.isCollection()) {
      json.writeStringField(typeName, 
          "#Collection(" + type.getFullQualifiedName().getFullQualifiedNameAsString() + ")");
    }
  } else {
    throw new SerializerException("Property type not yet supported!",
        SerializerException.MessageKeys.UNSUPPORTED_PROPERTY_TYPE, edmProperty.getName());
  }    
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:37,代码来源:ODataJsonSerializer.java

示例11: writePropertyValue

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
private void writePropertyValue(final ServiceMetadata metadata, final EdmProperty edmProperty,
    final Property property, final Set<List<String>> selectedPaths, final JsonGenerator json)
    throws IOException, SerializerException {
  final EdmType type = edmProperty.getType();
  try {
    if (edmProperty.isPrimitive()
        || type.getKind() == EdmTypeKind.ENUM || type.getKind() == EdmTypeKind.DEFINITION) {
      if (edmProperty.isCollection()) {
        writePrimitiveCollection((EdmPrimitiveType) type, property,
            edmProperty.isNullable(), edmProperty.getMaxLength(),
            edmProperty.getPrecision(), edmProperty.getScale(), edmProperty.isUnicode(), json);
      } else {
        writePrimitive((EdmPrimitiveType) type, property,
            edmProperty.isNullable(), edmProperty.getMaxLength(),
            edmProperty.getPrecision(), edmProperty.getScale(), edmProperty.isUnicode(), json);
      }
    } else if (property.isComplex()) {
      if (edmProperty.isCollection()) {
        writeComplexCollection(metadata, (EdmComplexType) type, property, selectedPaths, json);
      } else {
       writeComplex(metadata, (EdmComplexType) type, property, selectedPaths, json);
      }
    } else {
      throw new SerializerException("Property type not yet supported!",
          SerializerException.MessageKeys.UNSUPPORTED_PROPERTY_TYPE, edmProperty.getName());
    }
  } catch (final EdmPrimitiveTypeException e) {
    throw new SerializerException("Wrong value for property!", e,
        SerializerException.MessageKeys.WRONG_PROPERTY_VALUE,
        edmProperty.getName(), property.getValue().toString());
  }
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:33,代码来源:ODataJsonSerializer.java

示例12: writePropertyValue

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
private void writePropertyValue(final ServiceMetadata metadata, final EdmProperty edmProperty,
    final Property property, final Set<List<String>> selectedPaths, final JsonGenerator json)
    throws IOException, SerializerException {
  final EdmType type = edmProperty.getType();
  try {
    if (edmProperty.isPrimitive()
        || type.getKind() == EdmTypeKind.ENUM || type.getKind() == EdmTypeKind.DEFINITION) {
      if (edmProperty.isCollection()) {
        writePrimitiveCollection((EdmPrimitiveType) type, property,
            edmProperty.isNullable(), edmProperty.getMaxLength(),
            edmProperty.getPrecision(), edmProperty.getScale(), edmProperty.isUnicode(), json);
      } else {
        writePrimitive((EdmPrimitiveType) type, property,
            edmProperty.isNullable(), edmProperty.getMaxLength(),
            edmProperty.getPrecision(), edmProperty.getScale(), edmProperty.isUnicode(), json);
      }
    } else if (property.isComplex()) {
      if (edmProperty.isCollection()) {
        writeComplexCollection(metadata, (EdmComplexType) type, property, selectedPaths, json);
      } else {
        writeComplex(metadata, (EdmComplexType) type, property, selectedPaths, json);
      }
    } else {
      throw new SerializerException("Property type not yet supported!",
          SerializerException.MessageKeys.UNSUPPORTED_PROPERTY_TYPE, edmProperty.getName());
    }
  } catch (final EdmPrimitiveTypeException e) {
    throw new SerializerException("Wrong value for property!", e,
        SerializerException.MessageKeys.WRONG_PROPERTY_VALUE,
        edmProperty.getName(), property.getValue().toString());
  }
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:33,代码来源:JsonDeltaSerializerWithNavigations.java

示例13: addSelectPath

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
private void addSelectPath(UriTokenizer tokenizer, final EdmStructuredType referencedType, UriInfoImpl resource)
    throws UriParserException {
  final String name = tokenizer.getText();
  final EdmProperty property = referencedType.getStructuralProperty(name);

  if (property == null) {
    final EdmNavigationProperty navigationProperty = referencedType.getNavigationProperty(name);
    if (navigationProperty == null) {
      throw new UriParserSemanticException("Selected property not found.",
          UriParserSemanticException.MessageKeys.EXPRESSION_PROPERTY_NOT_IN_TYPE,
          referencedType.getName(), name);
    } else {
      resource.addResourcePart(new UriResourceNavigationPropertyImpl(navigationProperty));
    }

  } else if (property.isPrimitive()
      || property.getType().getKind() == EdmTypeKind.ENUM
      || property.getType().getKind() == EdmTypeKind.DEFINITION) {
    resource.addResourcePart(new UriResourcePrimitivePropertyImpl(property));

  } else {
    UriResourceComplexPropertyImpl complexPart = new UriResourceComplexPropertyImpl(property);
    resource.addResourcePart(complexPart);
    if (tokenizer.next(TokenKind.SLASH)) {
      if (tokenizer.next(TokenKind.QualifiedName)) {
        final FullQualifiedName qualifiedName = new FullQualifiedName(tokenizer.getText());
        final EdmComplexType type = edm.getComplexType(qualifiedName);
        if (type == null) {
          throw new UriParserSemanticException("Type not found.",
              UriParserSemanticException.MessageKeys.UNKNOWN_TYPE, qualifiedName.getFullQualifiedNameAsString());
        } else if (type.compatibleTo(property.getType())) {
          complexPart.setTypeFilter(type);
          if (tokenizer.next(TokenKind.SLASH)) {
            if (tokenizer.next(TokenKind.ODataIdentifier)) {
              addSelectPath(tokenizer, type, resource);
            } else {
              throw new UriParserSemanticException("Unknown part after '/'.",
                  UriParserSemanticException.MessageKeys.UNKNOWN_PART, "");
            }
          }
        } else {
          throw new UriParserSemanticException("The type cast is not compatible.",
              UriParserSemanticException.MessageKeys.INCOMPATIBLE_TYPE_FILTER, type.getName());
        }
      } else if (tokenizer.next(TokenKind.ODataIdentifier)) {
        addSelectPath(tokenizer, (EdmStructuredType) property.getType(), resource);
      } else if (tokenizer.next(TokenKind.SLASH)) {
        throw new UriParserSyntaxException("Illegal $select expression.",
            UriParserSyntaxException.MessageKeys.SYNTAX);
      } else {
        throw new UriParserSemanticException("Unknown part after '/'.",
            UriParserSemanticException.MessageKeys.UNKNOWN_PART, "");
      }
    }
  }
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:57,代码来源:SelectParser.java

示例14: appendProperties

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
private void appendProperties(final JsonGenerator json, 
    final EdmStructuredType type) throws SerializerException, IOException {
  List<String> propertyNames = new ArrayList<String>(type.getPropertyNames());
  if (type.getBaseType() != null) {
    propertyNames.removeAll(type.getBaseType().getPropertyNames());
  }
  for (String propertyName : propertyNames) {
    EdmProperty property = type.getStructuralProperty(propertyName);
    json.writeObjectFieldStart(propertyName);
    String fqnString;
    if (property.isPrimitive()) {
      fqnString = getFullQualifiedName(property.getType());
    } else {
      fqnString = getAliasedFullQualifiedName(property.getType());
    }
    json.writeStringField(TYPE, fqnString);
    if (property.isCollection()) {
      json.writeBooleanField(COLLECTION, property.isCollection());
    }

    // Facets
    if (!property.isNullable()) {
      json.writeBooleanField(NULLABLE, property.isNullable());
    }

    if (!property.isUnicode()) {
      json.writeBooleanField(UNICODE, property.isUnicode());
    }

    if (property.getDefaultValue() != null) {
      json.writeStringField(DEFAULT_VALUE, property.getDefaultValue());
    }

    if (property.getMaxLength() != null) {
      json.writeNumberField(MAX_LENGTH, property.getMaxLength());
    }

    if (property.getPrecision() != null) {
      json.writeNumberField(PRECISION, property.getPrecision());
    }

    if (property.getScale() != null) {
      json.writeNumberField(SCALE, property.getScale());
    }

    appendAnnotations(json, property, null);
    json.writeEndObject();
  }
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:50,代码来源:MetadataDocumentJsonSerializer.java

示例15: isStreamProperty

import org.apache.olingo.commons.api.edm.EdmProperty; //导入方法依赖的package包/类
private boolean isStreamProperty(EdmProperty edmProperty) {
  final EdmType type = edmProperty.getType();
  return (edmProperty.isPrimitive() && type == EdmPrimitiveTypeFactory.getInstance(EdmPrimitiveTypeKind.Stream));    
}
 
开发者ID:apache,项目名称:olingo-odata4,代码行数:5,代码来源:ODataJsonSerializer.java


注:本文中的org.apache.olingo.commons.api.edm.EdmProperty.isPrimitive方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。