private UriResource parsePathSegment(final EdmElement property) throws UriParserException { if (property == null || !(property.getType().getKind() == EdmTypeKind.COMPLEX || property instanceof EdmNavigationProperty)) { // Could be a customAggregate or $count. return null; } if (tokenizer.next(TokenKind.SLASH)) { final EdmStructuredType typeCast = ParserHelper.parseTypeCast(tokenizer, edm, (EdmStructuredType) property.getType()); if (typeCast != null) { ParserHelper.requireNext(tokenizer, TokenKind.SLASH); } return property.getType().getKind() == EdmTypeKind.COMPLEX ? new UriResourceComplexPropertyImpl((EdmProperty) property).setTypeFilter(typeCast) : new UriResourceNavigationPropertyImpl((EdmNavigationProperty) property).setCollectionTypeFilter(typeCast); } else { return null; } }
private UriResource parsePathSegment(final EdmElement property) throws UriParserException { if (property == null || !(property.getType().getKind() == EdmTypeKind.COMPLEX || property instanceof EdmNavigationProperty)) { // Could be a customAggregate or $count. return null; } if (tokenizer.next(TokenKind.SLASH)) { final EdmStructuredType typeCast = ParserHelper.parseTypeCast(tokenizer, edm, (EdmStructuredType) property.getType()); if (typeCast != null) { ParserHelper.requireNext(tokenizer, TokenKind.SLASH); } return property.getType().getKind() == EdmTypeKind.COMPLEX ? new UriResourceComplexPropertyImpl((EdmProperty) property).setTypeFilter(typeCast) : new UriResourceNavigationPropertyImpl((EdmNavigationProperty) property).setCollectionTypeFilter(typeCast); } else { return null; } }
final EdmStructuredType typeCast = ParserHelper.parseTypeCast(tokenizer, edm, type); if (typeCast != null) { complexResource.setTypeFilter(typeCast); ParserHelper.requireNext(tokenizer, TokenKind.SLASH); type = typeCast;
final EdmStructuredType typeCast = ParserHelper.parseTypeCast(tokenizer, edm, type); if (typeCast != null) { complexResource.setTypeFilter(typeCast); ParserHelper.requireNext(tokenizer, TokenKind.SLASH); type = typeCast;
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)) {
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)) {