You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by mi...@apache.org on 2013/09/24 14:42:35 UTC
[08/51] [partial] Refactored project structure
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/OrderExpressionImpl.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/OrderExpressionImpl.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/OrderExpressionImpl.java
deleted file mode 100644
index 796e5ff..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/OrderExpressionImpl.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import org.apache.olingo.odata2.api.edm.EdmType;
-import org.apache.olingo.odata2.api.exception.ODataApplicationException;
-import org.apache.olingo.odata2.api.uri.expression.CommonExpression;
-import org.apache.olingo.odata2.api.uri.expression.ExceptionVisitExpression;
-import org.apache.olingo.odata2.api.uri.expression.ExpressionKind;
-import org.apache.olingo.odata2.api.uri.expression.ExpressionVisitor;
-import org.apache.olingo.odata2.api.uri.expression.OrderExpression;
-import org.apache.olingo.odata2.api.uri.expression.SortOrder;
-
-/**
- *
- */
-public class OrderExpressionImpl implements OrderExpression {
-
- SortOrder orderType = SortOrder.asc;
- CommonExpression expression;
-
- OrderExpressionImpl(final CommonExpression expression) {
- this.expression = expression;
- }
-
- @Override
- public SortOrder getSortOrder() {
- return orderType;
- }
-
- @Override
- public CommonExpression getExpression() {
- return expression;
- }
-
- void setSortOrder(final SortOrder orderType) {
- this.orderType = orderType;
- }
-
- @Override
- public ExpressionKind getKind() {
- return ExpressionKind.ORDER;
- }
-
- @Override
- public EdmType getEdmType() {
- return null;
- }
-
- @Override
- public CommonExpression setEdmType(final EdmType edmType) {
- return this;
- }
-
- @Override
- public String getUriLiteral() {
- return "";
- }
-
- @Override
- public Object accept(final ExpressionVisitor visitor) throws ExceptionVisitExpression, ODataApplicationException {
- Object obj = expression.accept(visitor);
- Object ret = visitor.visitOrder(this, obj, orderType);
- return ret;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/ParameterSet.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/ParameterSet.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/ParameterSet.java
deleted file mode 100644
index b9ce742..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/ParameterSet.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.olingo.odata2.api.edm.EdmSimpleType;
-import org.apache.olingo.odata2.api.edm.EdmType;
-import org.apache.olingo.odata2.api.edm.EdmTypeKind;
-
-/**
- * Parameter set is a vector of 1 or more EDM types, it is used to store the possible
- * input and return types of a <i>OData filter operator</i> or <i>OData filter method</i>
- * @see InfoMethod
- * @see InfoBinaryOperator
- * @see InfoUnaryOperator
- *
- */
-@SuppressWarnings("javadoc")
-public class ParameterSet {
- private EdmType returnType = null;
- public ArrayList<EdmSimpleType> types = new ArrayList<EdmSimpleType>();
- private EdmSimpleType furtherType = null;
-
- public ParameterSet(final EdmType returnType, final EdmSimpleType type1) {
- this.returnType = returnType;
- types.add(type1);
- }
-
- public ParameterSet(final EdmSimpleType returnType, final EdmSimpleType type1, final EdmSimpleType type2) {
- this.returnType = returnType;
- types.add(type1);
- types.add(type2);
- }
-
- public ParameterSet(final EdmSimpleType returnType, final EdmSimpleType type1, final EdmSimpleType type2,
- final EdmSimpleType type3) {
- this.returnType = returnType;
- types.add(type1);
- types.add(type2);
- types.add(type3);
- }
-
- public EdmType getReturnType() {
- return returnType;
- }
-
- public EdmSimpleType getFurtherType() {
- return furtherType;
- }
-
- public ParameterSet setFurtherType(final EdmSimpleType furtherType) {
- this.furtherType = furtherType;
- return this;
- }
-
- /**
- * Compares a list of EdmTypes with the EdmTypes stored in {@link #types}.
- * The lists are compared sequentially, e.g index N of actualParameterTypes with index N of {@link #types}.
- * If the input list contains more elements than stored in {@link #types} (which is allowed when validating the
- * <i>concat</i> method
- * which takes a variable number of input parameters), the actual parameter type is compared against the
- * {@link #furtherType}.
- * @param actualParameterTypes
- * @param allowPromotion
- * @return true if equals
- * @throws ExpressionParserInternalError
- */
- public boolean equals(final List<EdmType> actualParameterTypes, final boolean allowPromotion)
- throws ExpressionParserInternalError {
- int actSize = actualParameterTypes.size();
- int paramSize = types.size();
-
- if (actSize < paramSize) {
- return false;
- // throw FilterParserInternalError.createINVALID_TYPE_COUNT(); //to few actual Parameters
- }
-
- // This may happen if the number of supplied actual method parameters is higher then than the number
- // of allowed method parameters but this should be checked before, hence this is an internal error in the parser
- if ((actSize > paramSize) && (furtherType == null)) {
- return false;
- // throw FilterParserInternalError.createINVALID_TYPE_COUNT();
- }
-
- for (int i = 0; i < actSize; i++) {
- EdmType actType = actualParameterTypes.get(i);
- if (actType == null) {
- return false;
- }
-
- EdmSimpleType paramType = null;
- if (i < paramSize) {
- paramType = types.get(i);
- } else {
- paramType = furtherType; // for methods with variable amount of method parameters
- }
-
- if (!actType.equals(paramType)) {
- // this the parameter type does not fit and if it is not allowed to promoted the actual parameter then
- // this parameter combination does not fit
- if (!allowPromotion) {
- return false;
- }
-
- // Its allowed to promoted the actual parameter!!!
-
- // Promotion only allowed for simple types
- if (actType.getKind() != EdmTypeKind.SIMPLE) {
- return false; // Tested with TestParserExceptions.testAdditionalStuff CASE 8
- }
-
- // The type simply don't match
- if (!paramType.isCompatible((EdmSimpleType) actType)) {
- return false;
- }
- }
- }
- return true;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/ParameterSetCombination.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/ParameterSetCombination.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/ParameterSetCombination.java
deleted file mode 100644
index ecc94b0..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/ParameterSetCombination.java
+++ /dev/null
@@ -1,132 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.olingo.odata2.api.edm.EdmType;
-
-public interface ParameterSetCombination {
-
- void add(ParameterSet parameterSet);
-
- ParameterSet validate(List<EdmType> actualParameterTypes) throws ExpressionParserInternalError;
-
- void addFirst(ParameterSet parameterSet);
-
- EdmType getReturnType();
-
- public static class PSCflex implements ParameterSetCombination {
- public List<ParameterSet> combinations = new ArrayList<ParameterSet>();
-
- @Override
- public void add(final ParameterSet parameterSet) {
- combinations.add(parameterSet);
- }
-
- @Override
- public EdmType getReturnType() {
- int parameterCount = combinations.size();
- if (parameterCount == 0) {
- return null;
- }
-
- if (parameterCount == 1) {
- return combinations.get(0).getReturnType();
- }
-
- // There are more than 1 possible return type, check if they are equal, if not return null.
- EdmType returnType = combinations.get(0).getReturnType();
- for (int i = 1; i < parameterCount; i++) {
- if (returnType != combinations.get(i)) {
- return null;
- }
- }
-
- return returnType;
-
- }
-
- @Override
- public void addFirst(final ParameterSet parameterSet) {
- List<ParameterSet> oldCombinations = combinations;
- combinations = new ArrayList<ParameterSet>();
- combinations.add(parameterSet);
- for (ParameterSet parameterSet1 : oldCombinations) {
- combinations.add(parameterSet1);
- }
-
- }
-
- @Override
- public ParameterSet validate(final List<EdmType> actualParameterTypes) throws ExpressionParserInternalError {
- if (combinations.size() == 0) {
- return new ParameterSet(null, null);
- }
-
- // first check for exact parameter combination
- for (ParameterSet parameterSet : combinations) {
- boolean s = parameterSet.equals(actualParameterTypes, false);
- if (s) {
- return parameterSet;
- }
- }
-
- // first check for parameter combination with promotion
- for (ParameterSet parameterSet : combinations) {
- boolean s = parameterSet.equals(actualParameterTypes, true);
- if (s) {
- return parameterSet;
- }
- }
- return null;
- }
-
- }
-
- public static class PSCReturnTypeEqLastParameter implements ParameterSetCombination {
-
- @Override
- public void add(final ParameterSet parameterSet) {
- throw new IllegalStateException();
- }
-
- @Override
- public void addFirst(final ParameterSet parameterSet) {
- throw new IllegalStateException();
- }
-
- @Override
- public ParameterSet validate(final List<EdmType> actualParameterTypes) throws ExpressionParserInternalError {
- EdmType xxx = actualParameterTypes.get(actualParameterTypes.size() - 1);
- return new ParameterSet(xxx, null);
- // return actualParameterTypes.get(actualParameterTypes.size() - 1);
- }
-
- @Override
- public EdmType getReturnType() {
- // If the return type is always the type of the last parameter of the actual parameters ( e.g. when using the
- // method operator)
- // then the return type can not predicted.
- return null;
- }
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/PropertyExpressionImpl.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/PropertyExpressionImpl.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/PropertyExpressionImpl.java
deleted file mode 100644
index ac19e47..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/PropertyExpressionImpl.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import org.apache.olingo.odata2.api.edm.EdmException;
-import org.apache.olingo.odata2.api.edm.EdmLiteral;
-import org.apache.olingo.odata2.api.edm.EdmType;
-import org.apache.olingo.odata2.api.edm.EdmTyped;
-import org.apache.olingo.odata2.api.uri.expression.CommonExpression;
-import org.apache.olingo.odata2.api.uri.expression.ExpressionKind;
-import org.apache.olingo.odata2.api.uri.expression.ExpressionVisitor;
-import org.apache.olingo.odata2.api.uri.expression.PropertyExpression;
-
-public class PropertyExpressionImpl implements PropertyExpression {
- private String uriLiteral;
- private EdmType edmType;
- private EdmTyped edmProperty;
- private EdmLiteral edmLiteral;
-
- public PropertyExpressionImpl(final String uriLiteral, final EdmLiteral edmLiteral) {
- this.uriLiteral = uriLiteral;
-
- this.edmLiteral = edmLiteral;
- if (edmLiteral != null) {
- edmType = edmLiteral.getType();
- }
- }
-
- public CommonExpression setEdmProperty(final EdmTyped edmProperty) {
- // used EdmTyped because it may be a EdmProperty or a EdmNavigationProperty
- this.edmProperty = edmProperty;
- return this;
- }
-
- @Override
- public CommonExpression setEdmType(final EdmType edmType) {
- this.edmType = edmType;
- return this;
- }
-
- @Override
- public String getPropertyName() {
- if (edmProperty == null) {
- return "";
- }
-
- try {
- return edmProperty.getName();
- } catch (EdmException e) {
- return "";
- }
- }
-
- public EdmLiteral getEdmLiteral() {
- return edmLiteral;
- }
-
- @Override
- public EdmTyped getEdmProperty() {
- return edmProperty;
- }
-
- @Override
- public ExpressionKind getKind() {
- return ExpressionKind.PROPERTY;
- }
-
- @Override
- public String getUriLiteral() {
- return uriLiteral;
- }
-
- @Override
- public EdmType getEdmType() {
- return edmType;
- }
-
- @Override
- public Object accept(final ExpressionVisitor visitor) {
- Object ret = visitor.visitProperty(this, uriLiteral, edmProperty);
- return ret;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/Token.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/Token.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/Token.java
deleted file mode 100644
index e4a7dfb..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/Token.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-/* 1 */
-
-import org.apache.olingo.odata2.api.edm.EdmLiteral;
-import org.apache.olingo.odata2.api.edm.EdmType;
-
-public class Token {
-
- private TokenKind kind;
- private int position;
- private String uriLiteral;
- private EdmLiteral javaLiteral;
-
- public Token(final TokenKind kind, final int position, final String uriLiteral, final EdmLiteral javaLiteral) {
- this.kind = kind;
- this.position = position;
- this.uriLiteral = uriLiteral;
- this.javaLiteral = javaLiteral;
- }
-
- public Token(final TokenKind kind, final int position, final String uriLiteral) {
- this.kind = kind;
- this.position = position;
- this.uriLiteral = uriLiteral;
- javaLiteral = null;
- }
-
- public TokenKind getKind() {
- return kind;
- }
-
- public int getPosition() {
- return position;
- }
-
- public EdmType getEdmType() {
- if (javaLiteral == null) {
- return null;
- }
- return javaLiteral.getType();
- }
-
- public String getUriLiteral() {
- return uriLiteral;
- }
-
- public EdmLiteral getJavaLiteral() {
- return javaLiteral;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenKind.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenKind.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenKind.java
deleted file mode 100644
index f8a93cd..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenKind.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-/* 1 */
-
-/**
- * The token kind is used to categorize a single {@link Token}.
- * The Expression parser ({@link FilterParserImpl}) uses this information
- * to build the expression tree.
- */
-public enum TokenKind {
- /**
- * Indicates that the token is a whitespace character
- */
- WHITESPACE,
-
- /**
- * Indicates that the token is a '(' character
- */
- OPENPAREN,
-
- /**
- * Indicates that the token is a ')' character
- */
- CLOSEPAREN,
-
- /**
- * Indicates that the token is a ',' character
- */
- COMMA,
-
- /**
- * Indicates that the token is a typed literal. That may be a
- * Edm.String like 'TEST'
- * Edm.Double like '1.1D'
- * or any other Edm.Simple Type
- */
- SIMPLE_TYPE,
-
- /**
- * Indicates that the token is a single symbol. That may be a
- * '-', '=', '/', '?', '.' or a '*' character
- */
- SYMBOL,
-
- /**
- * Indicates that the token is a set of alphanumeric characters starting
- * with a letter
- */
- LITERAL, TYPED_LITERAL_TODO_CHECK, UNKNOWN
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenList.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenList.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenList.java
deleted file mode 100644
index 4dbef4a..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenList.java
+++ /dev/null
@@ -1,180 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import java.util.ArrayList;
-import java.util.Iterator;
-
-import org.apache.olingo.odata2.api.edm.EdmLiteral;
-
-public class TokenList implements Iterator<Token> {
- private ArrayList<Token> tokens = null;
- int currentToken = 0;
-
- public TokenList() {
- tokens = new ArrayList<Token>();
- }
-
- /**
- * Append StringValue Token to tokens parameter
- * @param position Position of parsed token
- * @param kind Kind of parsed token
- * @param uriLiteral String value of parsed token
- */
- public void appendToken(final int position, final TokenKind kind, final String uriLiteral) {
- Token token = new Token(kind, position, uriLiteral);
- tokens.add(token);
- return;
- }
-
- /**
- * Append CharValue Token to tokens parameter
- * @param position Position of parsed token
- * @param kind Kind of parsed token
- * @param charValue Char value of parsed token
- */
- public void appendToken(final int position, final TokenKind kind, final char charValue) {
- Token token = new Token(kind, position, Character.toString(charValue));
- tokens.add(token);
- return;
- }
-
- /**
- * Append UriLiteral Token to tokens parameter
- * @param position Position of parsed token
- * @param kind Kind of parsed token
- * @param javaLiteral EdmLiteral of parsed token containing type and value of UriLiteral
- */
- public void appendEdmTypedToken(final int position, final TokenKind kind, final String uriLiteral,
- final EdmLiteral javaLiteral) {
- Token token = new Token(kind, position, uriLiteral, javaLiteral);
- tokens.add(token);
- return;
- }
-
- public Token lookToken() {
- if (currentToken >= tokens.size()) {
- return null;
- }
-
- return tokens.get(currentToken);
- }
-
- public Token lookPrevToken() {
- if (currentToken - 1 < 0) {
- return null;
- }
-
- return tokens.get(currentToken - 1);
- }
-
- public boolean hasTokens() {
- return (tokens.size() > 0);
- }
-
- public int tokenCount() {
- int i = tokens.size();
-
- return i;
- }
-
- public Token expectToken(final TokenKind comma) throws TokenizerExpectError {
- Token actual = next();
- if (actual == null) {
- throw TokenizerExpectError.createNO_TOKEN_AVAILABLE(comma.toString());
- }
-
- if (comma != actual.getKind()) {
- throw TokenizerExpectError.createINVALID_TOKENKIND_AT(comma, actual);
- }
- return actual;
- }
-
- public Token expectToken(final TokenKind comma, final boolean throwFilterExpression)
- throws ExpressionParserInternalError {
- Token actual = next();
- if (actual == null) {
- throw ExpressionParserInternalError.createNO_TOKEN_AVAILABLE(comma.toString());
- }
-
- if (comma != actual.getKind()) {
- if (throwFilterExpression) {
- throw ExpressionParserInternalError.createINVALID_TOKENKIND_AT(comma, actual);
- }
- }
- return actual;
- }
-
- public Token expectToken(final String literal) throws TokenizerExpectError {
- Token actual = next();
- if (actual == null) {
- throw TokenizerExpectError.createNO_TOKEN_AVAILABLE(literal);
- }
-
- if (!literal.equals(actual.getUriLiteral())) {
- throw TokenizerExpectError.createINVALID_TOKEN_AT(literal, actual);
- }
- return actual;
- }
-
- public Token expectToken(final String literal, final boolean throwInternal) throws ExpressionParserInternalError {
- Token actual = next();
- if (actual == null) {
- throw ExpressionParserInternalError.createNO_TOKEN_AVAILABLE(literal);
- }
-
- if (!literal.equals(actual.getUriLiteral())) {
- if (throwInternal) {
- throw ExpressionParserInternalError.createINVALID_TOKEN_AT(literal, actual);
- }
- }
- return actual;
- }
-
- public void skip() {
- currentToken++;
- }
-
- @Override
- public boolean hasNext() {
- return (currentToken < tokens.size());
- }
-
- @Override
- public Token next() {
- if (currentToken >= tokens.size()) {
- return null;
- }
-
- Token ret = tokens.get(currentToken);
- currentToken++;
- return ret;
- }
-
- @Override
- public void remove() {
- throw new IllegalArgumentException("Method not allowed");
- }
-
- public Token elementAt(final int index) {
-
- return tokens.get(index);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/Tokenizer.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/Tokenizer.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/Tokenizer.java
deleted file mode 100644
index 519f493..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/Tokenizer.java
+++ /dev/null
@@ -1,327 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import org.apache.olingo.odata2.api.edm.EdmLiteral;
-import org.apache.olingo.odata2.api.edm.EdmLiteralException;
-import org.apache.olingo.odata2.api.edm.EdmSimpleTypeFacade;
-import org.apache.olingo.odata2.api.edm.EdmSimpleTypeKind;
-import org.apache.olingo.odata2.api.uri.expression.ExpressionParserException;
-import org.apache.olingo.odata2.core.edm.EdmSimpleTypeFacadeImpl;
-
-/**
- * Expression tokenizer
- *
- */
-public class Tokenizer {
-
- // Pattern OTHER_LIT = Pattern.compile("^([[A-Za-z0-9]._~%!$&*+;:@-]+)");
- private static final Pattern OTHER_LIT = Pattern.compile("(?:\\p{L}|\\p{Digit}|[-._~%!$&*+;:@])+");
- private static final Pattern FUNK =
- Pattern
- .compile("^(startswith|endswith|substring|substring|substringof|indexof|replace|tolower|toupper" +
- "|trim|concat|length|year|mounth|day|hour|minute|second|round|ceiling|floor)( *)\\(");
- private static final Pattern AND_SUB1 = Pattern.compile("^(add|sub|mul|div|mod|not) ");
- private static final Pattern AND_SUB = Pattern.compile("^(and|or|eq|ne|lt|gt|le|ge) ");
- private static final Pattern prefix = Pattern.compile("^(X|binary|guid|datetime|datetimeoffset|time)'");
- private boolean flagIncludeWhitespace = false;
- private EdmSimpleTypeFacade typeDectector = null;
-
- int curPosition;
- final String expression;
- final int expressionLength;
- TokenList tokens;
-
- public Tokenizer(final String expression) {
- typeDectector = new EdmSimpleTypeFacadeImpl();
- this.expression = expression;
- expressionLength = expression.length();
- tokens = new TokenList();
- }
-
- /**
- * Inform the Tokenizer whether extra tokens for whitespace characters should be added to the token list or not.
- * @param flagIncludeWhitespace True -> Whitespace token will be added to token list; False otherwise
- * @return this
- */
- public Tokenizer setFlagWhiteSpace(final Boolean flagIncludeWhitespace) {
- this.flagIncludeWhitespace = flagIncludeWhitespace;
- return this;
- }
-
- /**
- * Tokenizes an expression as defined per OData specification
- * @return Token list
- */
- public TokenList tokenize() throws TokenizerException, ExpressionParserException {
- curPosition = 0;
- int oldPosition;
- char curCharacter;
- String token = "";
-
- while (curPosition < expressionLength) {
- oldPosition = curPosition;
-
- curCharacter = expression.charAt(curPosition);
- switch (curCharacter) {
- case ' ':
- // count whitespace and move pointer to next non-whitespace char
- eatWhiteSpaces(curPosition, curCharacter);
- break;
-
- case '(':
- tokens.appendToken(curPosition, TokenKind.OPENPAREN, curCharacter);
- curPosition = curPosition + 1;
-
- break;
-
- case ')':
- tokens.appendToken(curPosition, TokenKind.CLOSEPAREN, curCharacter);
- curPosition = curPosition + 1;
- break;
-
- case '\'':
- token = "";
- readLiteral(curCharacter);
-
- break;
-
- case ',':
- tokens.appendToken(oldPosition, TokenKind.COMMA, curCharacter);
- curPosition = curPosition + 1;
- break;
-
- case '=':
- case '/':
- case '?':
- case '.':
- case '*':
- curPosition = curPosition + 1;
- tokens.appendToken(oldPosition, TokenKind.SYMBOL, curCharacter);
- break;
-
- default:
- String rem_expr = expression.substring(curPosition); // remaining expression
-
- boolean isBinary = checkForBinary(oldPosition, rem_expr);
- if (isBinary) {
- break;
- }
-
- // check for prefixes like X, binary, guid, datetime
- boolean isPrefix = checkForPrefix(rem_expr);
- if (isPrefix) {
- break;
- }
-
- // check for math
- boolean isMath = checkForMath(oldPosition, rem_expr);
- if (isMath) {
- break;
- }
-
- // check for function
- boolean isFunction = checkForMethod(oldPosition, rem_expr);
- if (isFunction) {
- break;
- }
-
- boolean isBoolean = checkForBoolean(oldPosition, rem_expr);
- if (isBoolean) {
- break;
- }
-
- boolean isLiteral = checkForLiteral(oldPosition, curCharacter, rem_expr);
- if (isLiteral) {
- break;
- }
-
- token = new Character(curCharacter).toString();
- throw TokenizerException.createUNKNOWN_CHARACTER(oldPosition, token, expression);
- }
- }
- return tokens;
- }
-
- private boolean checkForLiteral(final int oldPosition, final char curCharacter, final String rem_expr) {
- final Matcher matcher = OTHER_LIT.matcher(rem_expr);
- boolean isLiteral = false;
- if (matcher.lookingAt()) {
- String token = matcher.group();
- try {
- EdmLiteral edmLiteral = typeDectector.parseUriLiteral(token);
- curPosition = curPosition + token.length();
- // It is a simple type.
- tokens.appendEdmTypedToken(oldPosition, TokenKind.SIMPLE_TYPE, token, edmLiteral);
- isLiteral = true;
- } catch (EdmLiteralException e) {
- // We treat it as normal untyped literal.
-
- // The '-' is checked here (and not in the switch statement) because it may be
- // part of a negative number.
- if (curCharacter == '-') {
- curPosition = curPosition + 1;
- tokens.appendToken(oldPosition, TokenKind.SYMBOL, curCharacter);
- isLiteral = true;
- } else {
- curPosition = curPosition + token.length();
- tokens.appendToken(oldPosition, TokenKind.LITERAL, token);
- isLiteral = true;
- }
- }
- }
- return isLiteral;
- }
-
- private boolean checkForBoolean(final int oldPosition, final String rem_expr) {
- boolean isBoolean = false;
- if (rem_expr.equals("true") || rem_expr.equals("false")) {
- curPosition = curPosition + rem_expr.length();
- tokens.appendEdmTypedToken(oldPosition, TokenKind.SIMPLE_TYPE, rem_expr, new EdmLiteral(EdmSimpleTypeFacadeImpl
- .getEdmSimpleType(EdmSimpleTypeKind.Boolean), rem_expr));
- isBoolean = true;
- }
- return isBoolean;
- }
-
- private void eatWhiteSpaces(final int oldPosition, char curCharacter) {
- int lv_token_len;
- String expression_sub;
- while ((curCharacter == ' ') && (curPosition < expressionLength)) {
- curPosition = curPosition + 1;
- if (curPosition < expressionLength) {
- curCharacter = expression.charAt(curPosition);
- }
- }
-
- lv_token_len = curPosition - oldPosition;
-
- if (flagIncludeWhitespace == true) {
- expression_sub = expression.substring(oldPosition, oldPosition + lv_token_len);
- tokens.appendEdmTypedToken(oldPosition, TokenKind.WHITESPACE, expression_sub, null);
- }
- }
-
- private boolean checkForMethod(final int oldPosition, final String rem_expr) {
- boolean isMethod = false;
- Matcher matcher = FUNK.matcher(rem_expr);
- if (matcher.find()) {
- String token = matcher.group(1);
- curPosition = curPosition + token.length();
- tokens.appendToken(oldPosition, TokenKind.LITERAL, token);
- isMethod = true;
- }
- return isMethod;
- }
-
- private boolean checkForMath(final int oldPosition, final String rem_expr) {
- boolean isMath = false;
- Matcher matcher1 = AND_SUB1.matcher(rem_expr);
- if (matcher1.find()) {
- String token = matcher1.group(1);
- curPosition = curPosition + token.length();
- tokens.appendToken(oldPosition, TokenKind.LITERAL, token);
- isMath = true;
- }
- return isMath;
- }
-
- private boolean checkForBinary(final int oldPosition, final String rem_expr) {
- boolean isBinary = false;
- Matcher matcher1 = AND_SUB.matcher(rem_expr);
- if (matcher1.find()) {
- String token = matcher1.group(1);
- curPosition = curPosition + token.length();
- tokens.appendToken(oldPosition, TokenKind.LITERAL, token);
- isBinary = true;
- }
- return isBinary;
- }
-
- private boolean checkForPrefix(final String rem_expr) throws ExpressionParserException, TokenizerException {
- boolean isPrefix = false;
- Matcher matcher = prefix.matcher(rem_expr);
- String token = "";
- char curCharacter;
-
- if (matcher.find()) {
- token = matcher.group(1);
- curPosition = curPosition + token.length();
- curCharacter = expression.charAt(curPosition); // "should be '
- readLiteral(curCharacter, token);
- isPrefix = true;
- }
- return isPrefix;
- }
-
- private void readLiteral(final char curCharacter) throws ExpressionParserException, TokenizerException {
- readLiteral(curCharacter, "");
- }
-
- /**
- * Read up to single ' and move pointer to the following char and tries a type detection
- * @param curCharacter
- * @param token
- * @throws ExpressionParserException
- * @throws TokenizerException
- */
- private void readLiteral(char curCharacter, String token) throws ExpressionParserException, TokenizerException {
- int offsetPos = -token.length();
- int oldPosition = curPosition;
- token = token + Character.toString(curCharacter);
- curPosition = curPosition + 1;
-
- boolean wasApostroph = false; // leading ' does not count
- while (curPosition < expressionLength) {
- curCharacter = expression.charAt(curPosition);
-
- if (curCharacter != '\'') {
- if (wasApostroph == true) {
- break;
- }
-
- token = token + curCharacter;
- wasApostroph = false;
- } else {
- if (wasApostroph) {
- wasApostroph = false; // a double ' is a normal character '
- } else {
- wasApostroph = true;
- token = token + curCharacter;
- }
- }
- curPosition = curPosition + 1;
- }
-
- if (!wasApostroph) {
- // Exception tested within TestPMparseFilterString
- throw FilterParserExceptionImpl.createTOKEN_UNDETERMINATED_STRING(oldPosition, expression);
- }
-
- try {
- EdmLiteral edmLiteral = typeDectector.parseUriLiteral(token);
- tokens.appendEdmTypedToken(oldPosition + offsetPos, TokenKind.SIMPLE_TYPE, token, edmLiteral);
- } catch (EdmLiteralException ex) {
- throw TokenizerException.createTYPEDECTECTION_FAILED_ON_STRING(ex, oldPosition, token);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerException.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerException.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerException.java
deleted file mode 100644
index cb02bbd..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerException.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import org.apache.olingo.odata2.api.edm.EdmLiteralException;
-import org.apache.olingo.odata2.api.exception.MessageReference;
-import org.apache.olingo.odata2.api.exception.ODataMessageException;
-
-/**
- * This exception is thrown if there is an error during tokenizing.<br>
- * <b>This exception in not in the public API</b>, but may be added as cause for
- * the {@link org.apache.olingo.odata2.api.uri.expression.ExpressionParserException} exception.
- *
- */
-public class TokenizerException extends ODataMessageException {
- private static final long serialVersionUID = 77L;
-
- public static final MessageReference TYPEDECTECTION_FAILED_ON_STRING = createMessageReference(
- TokenizerException.class, "TYPEDECTECTION_FAILED_ON_STRING");
- public static final MessageReference UNKNOWN_CHARACTER = createMessageReference(TokenizerException.class,
- "UNKNOWN_CHARACTER");
-
- private Token token;
- private int position;
-
- public Token getToken() {
- return token;
- }
-
- public TokenizerException setToken(final Token token) {
- this.token = token;
- return this;
- }
-
- public int getPosition() {
- return position;
- }
-
- public void setPosition(final int position) {
- this.position = position;
- }
-
- public TokenizerException(final MessageReference messageReference) {
- super(messageReference);
- }
-
- public TokenizerException(final MessageReference messageReference, final Throwable cause) {
- super(messageReference, cause);
- }
-
- static public TokenizerException createTYPEDECTECTION_FAILED_ON_STRING(final EdmLiteralException ex,
- final int position, final String uriLiteral) {
- MessageReference msgRef = TokenizerException.TYPEDECTECTION_FAILED_ON_STRING.create();
-
- msgRef.addContent(uriLiteral);
- msgRef.addContent(position);
- Token token = new Token(TokenKind.UNKNOWN, position, uriLiteral);
-
- return new TokenizerException(msgRef, ex).setToken(token);
- }
-
- /*
- * static public TokenizerException createTYPEDECTECTION_FAILED_ON_EDMTYPE(EdmLiteralException ex, int position,
- * String uriLiteral)
- * {
- * MessageReference msgRef = TokenizerException.TYPEDECTECTION_FAILED_ON_EDMTYPE.create();
- *
- * msgRef.addContent(uriLiteral);
- * msgRef.addContent(position);
- * Token token = new Token(TokenKind.UNKNOWN, position, uriLiteral);
- *
- * return new TokenizerException(msgRef).setToken(token);
- * }
- */
- static public TokenizerException createUNKNOWN_CHARACTER(final int position, final String uriLiteral,
- final String expression) {
- MessageReference msgRef = TokenizerException.UNKNOWN_CHARACTER.create();
-
- msgRef.addContent(uriLiteral);
- msgRef.addContent(position);
- msgRef.addContent(expression);
- Token token = new Token(TokenKind.UNKNOWN, position, uriLiteral);
-
- return new TokenizerException(msgRef).setToken(token);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerExpectError.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerExpectError.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerExpectError.java
deleted file mode 100644
index 64a9fba..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerExpectError.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import org.apache.olingo.odata2.api.exception.MessageReference;
-import org.apache.olingo.odata2.api.exception.ODataMessageException;
-
-/**
- * This exception is thrown if a token should be read
- * from the top of the {@link TokenList} which does not match an
- * expected token. The cause for using this exception <b>MUST</b> indicate an internal error
- * in the {@link Tokenizer} or inside the {@link FilterParserImpl}.
- * <br><br>
- * <b>This exception in not in the public API</b>, but may be added as cause for
- * the {@link ExpressionParserInternalError} exception.
- *
- */
-public class TokenizerExpectError extends ODataMessageException {
-
- private static final long serialVersionUID = 1L;
-
- public static final int parseStringpoken = 1;
-
- // Invalid token detected at position &POSITION&
- public static final MessageReference NO_TOKEN_AVAILABLE = createMessageReference(TokenizerExpectError.class,
- "NO_TOKEN_AVAILABLE");
- public static final MessageReference INVALID_TOKEN_AT = createMessageReference(TokenizerExpectError.class,
- "INVALID_TOKEN_AT");
- public static final MessageReference INVALID_TOKENKIND_AT = createMessageReference(TokenizerExpectError.class,
- "INVALID_TOKENKIND_AT");
-
- private String token;
- private Exception previous;
- private int position;
-
- public String getToken() {
- return token;
- }
-
- public void setToken(final String token) {
- this.token = token;
- }
-
- public Exception getPrevious() {
- return previous;
- }
-
- public void setPrevious(final Exception previous) {
- this.previous = previous;
- }
-
- public int getPosition() {
- return position;
- }
-
- public void setPosition(final int position) {
- this.position = position;
- }
-
- public TokenizerExpectError(final MessageReference messageReference) {
- super(messageReference);
- }
-
- public static TokenizerExpectError createINVALID_TOKEN_AT(final String expectedToken, final Token actualToken) {
- MessageReference msgRef = TokenizerExpectError.INVALID_TOKEN_AT.create();
-
- msgRef.addContent(expectedToken);
- msgRef.addContent(actualToken.getUriLiteral());
- msgRef.addContent(actualToken.getPosition());
-
- return new TokenizerExpectError(msgRef);
- }
-
- public static TokenizerExpectError createINVALID_TOKENKIND_AT(final TokenKind expectedTokenKind,
- final Token actualToken) {
- MessageReference msgRef = TokenizerExpectError.INVALID_TOKEN_AT.create();
-
- msgRef.addContent(expectedTokenKind.toString());
- msgRef.addContent(actualToken.getKind().toString());
- msgRef.addContent(actualToken.getUriLiteral());
- msgRef.addContent(actualToken.getPosition());
-
- return new TokenizerExpectError(msgRef);
- }
-
- public static TokenizerExpectError createNO_TOKEN_AVAILABLE(final String expectedToken) {
- MessageReference msgRef = TokenizerExpectError.INVALID_TOKEN_AT.create();
-
- msgRef.addContent(expectedToken);
-
- return new TokenizerExpectError(msgRef);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerRTException.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerRTException.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerRTException.java
deleted file mode 100644
index 3589b9d..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/TokenizerRTException.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-/**
- * Internal error. If used(thrown) the thrower
- *
- */
-public class TokenizerRTException extends Exception {
-
- /**
- *
- */
- private static final long serialVersionUID = 1L;
-
- /**
- *
- */
- public TokenizerRTException() {
- super();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/UnaryExpressionImpl.java
----------------------------------------------------------------------
diff --git a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/UnaryExpressionImpl.java b/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/UnaryExpressionImpl.java
deleted file mode 100644
index a9faa84..0000000
--- a/odata-core/src/main/java/org/apache/olingo/odata2/core/uri/expression/UnaryExpressionImpl.java
+++ /dev/null
@@ -1,81 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- ******************************************************************************/
-package org.apache.olingo.odata2.core.uri.expression;
-
-import org.apache.olingo.odata2.api.edm.EdmType;
-import org.apache.olingo.odata2.api.exception.ODataApplicationException;
-import org.apache.olingo.odata2.api.uri.expression.CommonExpression;
-import org.apache.olingo.odata2.api.uri.expression.ExceptionVisitExpression;
-import org.apache.olingo.odata2.api.uri.expression.ExpressionKind;
-import org.apache.olingo.odata2.api.uri.expression.ExpressionVisitor;
-import org.apache.olingo.odata2.api.uri.expression.UnaryExpression;
-import org.apache.olingo.odata2.api.uri.expression.UnaryOperator;
-
-/**
- *
- */
-public class UnaryExpressionImpl implements UnaryExpression {
- private InfoUnaryOperator operatorInfo = null;
- private CommonExpression operand = null;
- private EdmType edmType = null;
-
- public UnaryExpressionImpl(final InfoUnaryOperator operatorInfo, final CommonExpression operand) {
- this.operatorInfo = operatorInfo;
- this.operand = operand;
- }
-
- @Override
- public ExpressionKind getKind() {
- return ExpressionKind.UNARY;
- }
-
- @Override
- public UnaryOperator getOperator() {
- return operatorInfo.operator;
- }
-
- @Override
- public CommonExpression getOperand() {
- return operand;
- }
-
- @Override
- public EdmType getEdmType() {
- return edmType;
- }
-
- @Override
- public CommonExpression setEdmType(final EdmType edmType) {
- this.edmType = edmType;
- return this;
- }
-
- @Override
- public String getUriLiteral() {
- return operatorInfo.getSyntax();
- }
-
- @Override
- public Object accept(final ExpressionVisitor visitor) throws ExceptionVisitExpression, ODataApplicationException {
- Object retOperand = operand.accept(visitor);
-
- return visitor.visitUnary(this, operatorInfo.getOperator(), retOperand);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/resources/i18n.properties
----------------------------------------------------------------------
diff --git a/odata-core/src/main/resources/i18n.properties b/odata-core/src/main/resources/i18n.properties
deleted file mode 100644
index b28bf50..0000000
--- a/odata-core/src/main/resources/i18n.properties
+++ /dev/null
@@ -1,231 +0,0 @@
-#-------------------------------------------------------------------------------
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#-------------------------------------------------------------------------------
-# Fallback
-#
-##################################
-# CommonExceptions (Should these exist?)
-##################################
-org.apache.olingo.odata2.api.exception.ODataMessageException.COMMON=Common exception
-
-##################################
-# UriParserExceptions
-##################################
-org.apache.olingo.odata2.api.uri.UriNotMatchingException.MATCHPROBLEM=Could not match segment: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriNotMatchingException.NOTFOUND=Could not find an entity set or function import for '%1$s'.
-org.apache.olingo.odata2.api.uri.UriNotMatchingException.CONTAINERNOTFOUND=Could not find container with name: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriNotMatchingException.ENTITYNOTFOUND=Could not find entity with name: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriNotMatchingException.PROPERTYNOTFOUND=Could not find property with name: '%1$s'.
-
-org.apache.olingo.odata2.api.uri.UriSyntaxException.URISYNTAX=Invalid URI syntax.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.ENTITYSETINSTEADOFENTITY=Must be an entity set instead of an entity: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.NOTEXT=An exception occurred.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.NOMEDIARESOURCE=The requested resource is no media resource.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.NONAVIGATIONPROPERTY=Property '%1$s' must be a navigation property.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.MISSINGPARAMETER=Missing parameter.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.MISSINGKEYPREDICATENAME=Missing key predicate name for key: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.DUPLICATEKEYNAMES=Duplicate key names: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.EMPTYSEGMENT=No empty segment allowed.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.MUSTNOTBELASTSEGMENT='%1$s' must not be the last segment.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.MUSTBELASTSEGMENT='%1$s' must be the last segment.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDSEGMENT=Invalid segment: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDVALUE=Invalid value: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDNULLVALUE=Value for '%1$s' must not be null.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDNEGATIVEVALUE=Provided value '%1$s' must not be negative.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDRETURNTYPE=Invalid return type: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDPROPERTYTYPE=Invalid type for property: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDKEYPREDICATE=Invalid key predicate: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDSYSTEMQUERYOPTION=Invalid system query option: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDFILTEREXPRESSION=Invalid filter expression: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INVALIDORDERBYEXPRESSION=Invalid order by expression: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.LITERALFORMAT=Wrong literal format for literal: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.UNKNOWNLITERAL=Unknown literal: '%1$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INCOMPATIBLELITERAL=Format of '%1$s' is not compatible with '%2$s'.
-org.apache.olingo.odata2.api.uri.UriSyntaxException.INCOMPATIBLESYSTEMQUERYOPTION=System query option '%1$s' is not compatible with the return type.
-
-##################################
-# EDMExceptions
-##################################
-org.apache.olingo.odata2.api.edm.EdmLiteralException.NOTEXT=An exception occurred.
-org.apache.olingo.odata2.api.edm.EdmLiteralException.LITERALFORMAT=Wrong literal format for literal: '%1$s'.
-org.apache.olingo.odata2.api.edm.EdmLiteralException.UNKNOWNLITERAL=Unknown literal: '%1$s'.
-
-org.apache.olingo.odata2.api.edm.EdmException.COMMON=An exception occurred.
-org.apache.olingo.odata2.api.edm.EdmException.PROVIDERPROBLEM=A problem has been detected in the metadata provided by the EDM provider.
-
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.COMMON=An exception occurred.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.LITERAL_KIND_MISSING=The literal kind is missing.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.LITERAL_KIND_NOT_SUPPORTED=The literal kind '%1$s' is not supported.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.LITERAL_NULL_NOT_ALLOWED=The metadata do not allow a null literal.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.LITERAL_ILLEGAL_CONTENT=The literal '%1$s' is not formatted properly.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.LITERAL_FACETS_NOT_MATCHED=The metadata constraints '%2$s' do not match the literal '%1$s'.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.LITERAL_UNCONVERTIBLE_TO_VALUE_TYPE=The literal '%1$s' can not be converted into the type '%1$s'.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.VALUE_TYPE_NOT_SUPPORTED=The type '%1$s' of the value object is not supported.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.VALUE_NULL_NOT_ALLOWED=The metadata do not allow a null value.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.VALUE_ILLEGAL_CONTENT=The value object '%1$s' can not be formatted properly due to its content.
-org.apache.olingo.odata2.api.edm.EdmSimpleTypeException.VALUE_FACETS_NOT_MATCHED=The metadata constraints '%2$s' do not allow to format the value '%1$s'.
-
-##################################
-# EPexceptions
-##################################
-org.apache.olingo.odata2.api.ep.EntityProviderException.COMMON=An exception occurred.
-org.apache.olingo.odata2.api.ep.EntityProviderException.EXCEPTION_OCCURRED=An exception of type '%1$s' occurred.
-org.apache.olingo.odata2.api.ep.EntityProviderException.ILLEGAL_ARGUMENT=Illegal argument for method call with message '%1$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INLINECOUNT_INVALID=Invalid inline count found.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_STATE=Invalid consuming state for parsing with message '%1$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_INLINE_CONTENT=Invalid '%1$s' found for parsing of inline content.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_PROPERTY=Invalid property '%1$s' found.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_NAMESPACE=Invalid or missing namespace for '%1$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_PARENT_TAG=Invalid parent tag. Expected '%1$s' but found '%2$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_MAPPING=Invalid mapping value for property '%1$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_ENTITYTYPE=Supplied entity type '%1$s' does not match the content entity type '%2$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_COMPLEX_TYPE=Supplied complex type '%1$s' does not match the content complex type '%2$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_CONTENT='%1$s' not expected in '%2$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.INVALID_PROPERTY_VALUE=Provided value for the property '%1$s' is not compatible with the property.
-org.apache.olingo.odata2.api.ep.EntityProviderException.MISSING_ATTRIBUTE=Mandatory attribute '%1$s' at tag '%2$s' was not found.
-org.apache.olingo.odata2.api.ep.EntityProviderException.MISSING_PROPERTY=Property with name '%1$s' was not found.
-org.apache.olingo.odata2.api.ep.EntityProviderException.NOT_SET_CHARACTER_ENCODING=Mandatory character encoding is not set.
-org.apache.olingo.odata2.api.ep.EntityProviderException.DOUBLE_PROPERTY=Double occurrence of property with name '%1$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.UNSUPPORTED_CHARACTER_ENCODING=The given character encoding '%1$s' is not supported.
-org.apache.olingo.odata2.api.ep.EntityProviderException.UNSUPPORTED_PROPERTY_TYPE=The given property type '%1$s' is not supported.
-org.apache.olingo.odata2.api.ep.EntityProviderException.EXPANDNOTSUPPORTED=Expand of the navigation property '%1$s' is not supported.
-org.apache.olingo.odata2.api.ep.EntityProviderException.MEDIA_DATA_NOT_INITIAL=Resource is not a media resource but media metadata was provided.
-org.apache.olingo.odata2.api.ep.EntityProviderException.END_DOCUMENT_EXPECTED=End of document expected but was '%1$s'.
-org.apache.olingo.odata2.api.ep.EntityProviderException.MISSING_RESULTS_ARRAY=Mandatory results array not found.
-
-##################################
-# BatchParserexceptions
-##################################
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_CHANGESET_BOUNDARY=The boundary of the ChangeSet should be different from that used by the Batch: line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_BOUNDARY_DELIMITER=The boundary delimiter must begin with two hyphen characters: line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.MISSING_BOUNDARY_DELIMITER=Missing boundary delimiter at line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.MISSING_CLOSE_DELIMITER=Missing close delimiter at line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_QUERY_OPERATION_METHOD=Invalid method: a Query Operation cannot contain insert, update or delete requests at line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_CHANGESET_METHOD= Invalid method: a ChangeSet cannot contain retrieve requests at line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_QUERY_PARAMETER=Invalid query parameters.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_URI=Invalid URI: line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.UNSUPPORTED_ABSOLUTE_PATH = An absolute-path in request line is not supported: line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_BOUNDARY=Invalid boundary at line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.NO_MATCH_WITH_BOUNDARY_STRING=The boundary string does not match the boundary from the Content-Type header field '%1$s': line '%2$s'.
-org.apache.olingo.odata2.api.batch.BatchException.MISSING_CONTENT_TYPE=No Content-Type field for MIME-header is present.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_CONTENT_TYPE=Content-Type should be '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.MISSING_PARAMETER_IN_CONTENT_TYPE=The Content-Type field for multipart entities requires boundary parameter.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_CONTENT_TRANSFER_ENCODING=The Content-Transfer-Encoding should be binary.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_ACCEPT_HEADER=Invalid Accept header: '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_ACCEPT_LANGUAGE_HEADER=Invalid Accept-Language: '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_HEADER=Invalid header: '%1$s' at line '%2$s'.
-org.apache.olingo.odata2.api.batch.BatchException.MISSING_BLANK_LINE=Expected empty line but was '%1$s': line '%2$s' .
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_PATHINFO=PathInfo should not be null.
-org.apache.olingo.odata2.api.batch.BatchException.MISSING_METHOD=Missing method in request line '%1$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_REQUEST_LINE=Invalid request line '%1$s' at line '%2$s'.
-org.apache.olingo.odata2.api.batch.BatchException.INVALID_REQUEST_LINE=Invalid status line '%1$s' at line '%2$s'.
-org.apache.olingo.odata2.api.batch.BatchException.TRUNCATED_BODY=Body is truncated: line '%1$s'.
-
-##################################
-# HttpExceptions
-##################################
-org.apache.olingo.odata2.api.exception.ODataHttpException.COMMON=Common exception
-
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.COMMON=Bad Request.
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.NOTSUPPORTED=The request is not supported by the processor.
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.INVALID_HEADER=The request contains an invalid header parameter '%1$s' with value '%2$s'.
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.INVALID_SYNTAX=The Data Services Request could not be understood due to malformed syntax.
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.URLTOOSHORT=The URL is too short.
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.VERSIONERROR=The Data Services Request version '%1$s' is not supported for the request payload.
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.PARSEVERSIONERROR=The Data Services Request version '%1$s' cannot be parsed.
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.BODY=The request body is malformed.
-org.apache.olingo.odata2.api.exception.ODataBadRequestException.AMBIGUOUS_XMETHOD=Ambiguous X-HTTP-Method and X-HTTP-Method-Override header.
-
-org.apache.olingo.odata2.api.exception.ODataForbiddenException.COMMON=Forbidden
-
-org.apache.olingo.odata2.api.exception.ODataNotFoundException.MATRIX=Matrix parameter '%1$s' with path segment '%2$s' not found!
-org.apache.olingo.odata2.api.exception.ODataNotFoundException.ENTITY=Requested entity could not be found.
-
-org.apache.olingo.odata2.api.exception.ODataMethodNotAllowedException.DISPATCH=The request dispatcher does not allow the HTTP method used for the request.
-
-org.apache.olingo.odata2.api.exception.ODataNotAcceptableException.COMMON=The request can not be accepted.
-org.apache.olingo.odata2.api.exception.ODataNotAcceptableException.NOT_SUPPORTED_CONTENT_TYPE=Content type '%1$s' is not supported.
-org.apache.olingo.odata2.api.exception.ODataNotAcceptableException.NOT_SUPPORTED_ACCEPT_HEADER=The accept header '%1$s' is not supported for this resource.
-
-org.apache.olingo.odata2.api.exception.ODataConflictException.COMMON=Conflict
-
-org.apache.olingo.odata2.api.exception.ODataPreconditionFailedException.COMMON=Precondition failed
-
-org.apache.olingo.odata2.api.exception.ODataUnsupportedMediaTypeException.NOT_SUPPORTED=Media type %1$s is not supported.
-org.apache.olingo.odata2.api.exception.ODataUnsupportedMediaTypeException.NOT_SUPPORTED_CONTENT_TYPE=Content type %1$s is not supported for this resource.
-org.apache.olingo.odata2.api.exception.ODataUnsupportedMediaTypeException.NOT_SUPPORTED_ACCEPT_HEADER=Accept header %1$s is not supported for this resource.
-
-org.apache.olingo.odata2.api.exception.ODataPreconditionRequiredException.COMMON=Precondition required
-
-org.apache.olingo.odata2.api.exception.ODataNotImplementedException.COMMON=Not implemented
-org.apache.olingo.odata2.api.exception.ODataNotImplementedException.TUNNELING=Method not recognized for X-HTTP-Method or X-HTTP-Method-Override header.
-
-org.apache.olingo.odata2.api.exception.ODataServiceUnavailableException.COMMON=Service Unavailable
-
-##################################
-# FilterParserExceptions
-##################################
-org.apache.olingo.odata2.api.uri.expression.ExceptionVisitExpression.COMMON=Error while traversing a ODATA expression tree.
-
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.COMMON=Error while parsing a ODATA expression.
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.INVALID_TRAILING_TOKEN_DETECTED_AFTER_PARSING=Invalid token "%1$s" detected after parsing at position %2$s in "%3$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.TOKEN_UNDETERMINATED_STRING=Unterminated string literal at position %1$s in "%2$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.INVALID_TYPES_FOR_BINARY_OPERATOR=Operator "%1$s" incompatible with operand types "%2$s" and "%3$s" at position %4$s in "%5$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.MISSING_CLOSING_PHARENTHESIS=Missing closing parenthesis ")" for opening parenthesis "(" at position %1$s in "%2$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.ERROR_IN_TOKENIZER=Error while tokenizing a ODATA expression on token "%1$s" at position %2$s in "%3$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.EXPRESSION_EXPECTED_AFTER_POS=Expression expected after position %1$s in "%2$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.COMMA_OR_END_EXPECTED_AT_POS=Comma or end of expression expected at position %1$s in "%2$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.EXPRESSION_EXPECTED_AT_POS=Expression expected at position %1$s in "%2$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.COMMA_OR_CLOSING_PHARENTHESIS_EXPECTED_AFTER_POS=")" or "," expected after position %1$s in "%2$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.INVALID_METHOD_CALL=Unknown function "%1$s" at position %2$s in "%3$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.METHOD_WRONG_ARG_EXACT=No applicable method found for "%1$s" at position %2$s in "%3$s" with the specified arguments. Method "%1$s" requires exact %4$s argument(s).
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.METHOD_WRONG_ARG_BETWEEN=No applicable method found for "%1$s" at position %2$s in "%3$s" with the specified arguments. Method "%1$s" requires between %4$s and %5$s arguments.
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.METHOD_WRONG_ARG_X_OR_MORE=No applicable method found for "%1$s" at position %2$s in "%3$s" with the specified arguments. Method "%1$s" requires %4$s or more arguments.
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.METHOD_WRONG_ARG_X_OR_LESS=No applicable method found for "%1$s" at position %2$s in "%3$s" with the specified arguments. Method "%1$s" requires maximal %4$s arguments.
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.METHOD_WRONG_INPUT_TYPE=No applicable method found for "%1$s" at position %2$s in "%3$s" for the specified argument types.
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.LEFT_SIDE_NOT_STRUCTURAL_TYPE=No property "%1$s" exists in type "%2$s" at position %3$s in "%4$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.LEFT_SIDE_NOT_A_PROPERTY=Leftside of method operator at position %1$s is not a property in "%2$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.PROPERTY_NAME_NOT_FOUND_IN_TYPE=No property "%1$s" exists in type "%2$s" at position %3$s in "%4$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.INVALID_SORT_ORDER=Invalid sort order in OData orderby parser at position %1$s in "%2$s".
-org.apache.olingo.odata2.api.uri.expression.ExpressionParserException.TYPE_EXPECTED_AT=Expression of type "%1$s" expected at position %2$s in "%3$s" (actual type is "%4$s").
-org.apache.olingo.odata2.core.uri.expression.ExpressionParserInternalError.ERROR_PARSING_METHOD=Internal error in OData filter parser while parsing a method expression.
-org.apache.olingo.odata2.core.uri.expression.ExpressionParserInternalError.ERROR_PARSING_PARENTHESIS=Internal error in OData filter parser while parsing a parenthesis expression.
-org.apache.olingo.odata2.core.uri.expression.ExpressionParserInternalError.ERROR_ACCESSING_EDM=Internal error in OData filter parser while accessing the EDM.
-org.apache.olingo.odata2.core.uri.expression.ExpressionParserInternalError.INVALID_TYPE_COUNT=Internal error in OData filter parser while validating the allowed types.
-org.apache.olingo.odata2.core.uri.expression.ExpressionParserInternalError.INVALID_TOKEN_AT =Expect token '%1$s', but invalid token '%2$s' detected at position '%3$s'.
-org.apache.olingo.odata2.core.uri.expression.ExpressionParserInternalError.INVALID_TOKENKIND_AT=Expect tokenkind '%1$s', but invalid tokenkind '%2$s'(with value:'%3$s' detected at position '%4$s'.
-
-org.apache.olingo.odata2.core.uri.expression.TokenizerExpectError.NO_TOKEN_AVAILABLE =Expect token %1$s, but no token left in token list.
-org.apache.olingo.odata2.core.uri.expression.TokenizerExpectError.INVALID_TOKEN_AT =Expect token '%1$s', but invalid token '%2$s' detected at position '%3$s'.
-org.apache.olingo.odata2.core.uri.expression.TokenizerExpectError.INVALID_TOKENKIND_AT =Expect tokenkind '%1$s', but invalid tokenkind '%2$s'(with value:'%3$s' detected at position '%4$s'.
-org.apache.olingo.odata2.core.uri.expression.TokenizerException.TYPEDECTECTION_FAILED_ON_STRING=Type detection error for string like token '%1$s' at position '%2$s'.
-org.apache.olingo.odata2.core.uri.expression.TokenizerException.TYPEDECTECTION_FAILED_ON_EDMTYPE=Type detection error for edmType like token '%1$s' at position '%2$s'.
-org.apache.olingo.odata2.core.uri.expression.TokenizerException.UNKNOWN_CHARACTER=Unknown character '%1$s' at position '%2$s' detected in "%3$s".
-
-#########################################
-# For testing
-# (please keep this inside this file and keep the english text in other languages)
-#########################################
-org.apache.olingo.odata2.testutil.mock.SampleClassForInvalidMessageReferences.EXIST=Exist
-#keep DOES_NOT_EXIST out commented
-#org.apache.olingo.odata2.testutil.mock.SampleClassForInvalidMessageReferences.DOES_NOT_EXIST=Does not exist
-#keep EXITS_BUT_EMPTY text empty
-org.apache.olingo.odata2.testutil.mock.SampleClassForInvalidMessageReferences.EXITS_BUT_EMPTY=
-
-
-
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/resources/i18n_de.properties
----------------------------------------------------------------------
diff --git a/odata-core/src/main/resources/i18n_de.properties b/odata-core/src/main/resources/i18n_de.properties
deleted file mode 100644
index f34cea7..0000000
--- a/odata-core/src/main/resources/i18n_de.properties
+++ /dev/null
@@ -1,23 +0,0 @@
-#-------------------------------------------------------------------------------
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#-------------------------------------------------------------------------------
-# German translations
-#
-org.apache.olingo.odata2.api.exception.ODataMessageException.COMMON=Allgemeiner Fehler
-
-org.apache.olingo.odata2.api.exception.ODataNotFoundException.ENTITY=Die angefragte Entit\u00e4t wurde nicht gefunden.
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/57599da6/odata-core/src/main/resources/i18n_de_DE.properties
----------------------------------------------------------------------
diff --git a/odata-core/src/main/resources/i18n_de_DE.properties b/odata-core/src/main/resources/i18n_de_DE.properties
deleted file mode 100644
index ac6c760..0000000
--- a/odata-core/src/main/resources/i18n_de_DE.properties
+++ /dev/null
@@ -1,21 +0,0 @@
-#-------------------------------------------------------------------------------
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-#-------------------------------------------------------------------------------
-# German translations
-#
-org.apache.olingo.odata2.api.exception.ODataMessageException.COMMON=Allgemeiner Fehler