[OLINGO-663] Add OdataLibrary Exception to processor interfaces

Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo
Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/b8187f53
Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/b8187f53
Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/b8187f53

Branch: refs/heads/master
Commit: b8187f5307357bb7637b0bb54acb23c3baa7cf0b
Parents: 9825f36
Author: Christian Amend <[email protected]>
Authored: Tue Jun 2 17:36:20 2015 +0200
Committer: Christian Amend <[email protected]>
Committed: Wed Jun 3 09:45:37 2015 +0200

----------------------------------------------------------------------
 .../server/api/ODataLibraryException.java       | 159 +++++++++++++++++++
 .../server/api/ODataTranslatedException.java    | 159 -------------------
 .../olingo/server/api/batch/BatchFacade.java    |  86 +++++-----
 .../api/deserializer/DeserializerException.java |   4 +-
 .../ActionComplexCollectionProcessor.java       |   9 +-
 .../api/processor/ActionComplexProcessor.java   |   9 +-
 .../ActionEntityCollectionProcessor.java        |   9 +-
 .../api/processor/ActionEntityProcessor.java    |   9 +-
 .../ActionPrimitiveCollectionProcessor.java     |   9 +-
 .../api/processor/ActionPrimitiveProcessor.java |   9 +-
 .../api/processor/ActionVoidProcessor.java      |   6 +-
 .../server/api/processor/BatchProcessor.java    |   7 +-
 .../processor/ComplexCollectionProcessor.java   |  20 ++-
 .../server/api/processor/ComplexProcessor.java  |  20 ++-
 .../CountComplexCollectionProcessor.java        |   6 +-
 .../CountEntityCollectionProcessor.java         |   6 +-
 .../CountPrimitiveCollectionProcessor.java      |   6 +-
 .../server/api/processor/DefaultProcessor.java  |   8 +-
 .../server/api/processor/DeltaProcessor.java    |   4 +-
 .../processor/EntityCollectionProcessor.java    |   6 +-
 .../server/api/processor/EntityProcessor.java   |  27 ++--
 .../api/processor/MediaEntityProcessor.java     |  23 ++-
 .../server/api/processor/MetadataProcessor.java |   6 +-
 .../processor/PrimitiveCollectionProcessor.java |  21 ++-
 .../api/processor/PrimitiveProcessor.java       |  19 ++-
 .../api/processor/PrimitiveValueProcessor.java  |   6 +-
 .../processor/ReferenceCollectionProcessor.java |  11 +-
 .../api/processor/ReferenceProcessor.java       |  18 +--
 .../api/processor/ServiceDocumentProcessor.java |   6 +-
 .../api/serializer/SerializerException.java     |   4 +-
 .../server/api/TranslatedExceptionsTest.java    |   4 +-
 .../olingo/server/core/OData4HttpHandler.java   |   4 +-
 .../olingo/server/core/ServiceDispatcher.java   |   6 +-
 .../olingo/server/core/ServiceHandler.java      |  82 +++++-----
 .../olingo/server/core/ServiceRequest.java      |   4 +-
 .../core/legacy/ProcessorServiceHandler.java    |  60 +++----
 .../server/core/requests/ActionRequest.java     |   4 +-
 .../server/core/requests/BatchRequest.java      |   6 +-
 .../server/core/requests/DataRequest.java       |  20 +--
 .../server/core/requests/FunctionRequest.java   |   4 +-
 .../server/core/requests/MediaRequest.java      |   4 +-
 .../server/core/requests/MetadataRequest.java   |   4 +-
 .../core/requests/ServiceDocumentRequest.java   |   4 +-
 .../server/core/responses/CountResponse.java    |   4 +-
 .../server/core/responses/EntityResponse.java   |   4 +-
 .../core/responses/EntitySetResponse.java       |   4 +-
 .../server/core/responses/MetadataResponse.java |   6 +-
 .../core/responses/NoContentResponse.java       |   4 +-
 .../core/responses/PrimitiveValueResponse.java  |   4 +-
 .../server/core/responses/PropertyResponse.java |   4 +-
 .../core/responses/ServiceDocumentResponse.java |   6 +-
 .../server/core/responses/ServiceResponse.java  |   4 +-
 .../core/responses/ServiceResponseVisior.java   |  20 +--
 .../server/core/responses/StreamResponse.java   |   4 +-
 .../olingo/server/example/TripPinHandler.java   |  50 +++---
 .../server/core/ContentNegotiatorException.java |   4 +-
 .../olingo/server/core/ODataDispatcher.java     |  74 ++++-----
 .../server/core/ODataExceptionHelper.java       |   8 +-
 .../apache/olingo/server/core/ODataHandler.java |   4 +-
 .../server/core/ODataHandlerException.java      |   4 +-
 .../server/core/ODataHttpHandlerImpl.java       |  10 +-
 .../core/PreconditionRequiredException.java     |   4 +-
 .../core/batchhandler/BatchFacadeImpl.java      |   4 +-
 .../server/core/batchhandler/BatchHandler.java  |   5 +-
 .../core/batchhandler/BatchPartHandler.java     |   7 +-
 .../core/uri/parser/UriParserException.java     |   4 +-
 .../uri/validator/UriValidationException.java   |   4 +-
 .../server/core/ODataHttpHandlerImplTest.java   |   4 +-
 .../core/TranslatedExceptionSubclassesTest.java |  16 +-
 .../batchhandler/MockedBatchHandlerTest.java    |   3 +-
 .../processor/TechnicalActionProcessor.java     |  19 ++-
 .../processor/TechnicalBatchProcessor.java      |   5 +-
 .../processor/TechnicalEntityProcessor.java     | 124 +++++++--------
 .../TechnicalPrimitiveComplexProcessor.java     |  37 +++--
 .../core/uri/testutil/TestUriValidator.java     |   4 +-
 75 files changed, 658 insertions(+), 698 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataLibraryException.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataLibraryException.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataLibraryException.java
new file mode 100644
index 0000000..b639702
--- /dev/null
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataLibraryException.java
@@ -0,0 +1,159 @@
+/*
+ * 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.server.api;
+
+import java.util.Arrays;
+import java.util.Formatter;
+import java.util.Locale;
+import java.util.MissingFormatArgumentException;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
+import org.apache.olingo.commons.api.ODataException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Abstract superclass of all translatable server exceptions.
+ */
+public abstract class ODataLibraryException extends ODataException {
+
+  private static final long serialVersionUID = -1210541002198287561L;
+  private static final Logger LOG = 
LoggerFactory.getLogger(ODataLibraryException.class);
+  private static final Locale DEFAULT_LOCALE = Locale.ENGLISH;
+
+  protected static final String DEFAULT_SERVER_BUNDLE_NAME = 
"server-core-exceptions-i18n";
+
+  /** Key for the exception text in the resource bundle. */
+  public static interface MessageKey {
+    /** Gets this key. */
+    public String getKey();
+  }
+
+  private MessageKey messageKey;
+  private Object[] parameters;
+
+  protected ODataLibraryException(final String developmentMessage, final 
MessageKey messageKey,
+      final String... parameters) {
+    super(developmentMessage);
+    this.messageKey = messageKey;
+    this.parameters = parameters;
+  }
+
+  protected ODataLibraryException(final String developmentMessage, final 
Throwable cause,
+      final MessageKey messageKey,
+      final String... parameters) {
+    super(developmentMessage, cause);
+    this.messageKey = messageKey;
+    this.parameters = parameters;
+  }
+
+  @Override
+  public String getLocalizedMessage() {
+    return getTranslatedMessage(DEFAULT_LOCALE).getMessage();
+  }
+
+  @Override
+  public String toString() {
+    return getMessage();
+  }
+
+  /** Gets the message key. */
+  public MessageKey getMessageKey() {
+    return messageKey;
+  }
+
+  /**
+   * Gets the translated message text for a given locale (or the default 
locale if not available),
+   * returning the developer message text if none is found.
+   * @param locale the preferred {@link Locale}
+   * @return the error message
+   */
+  public ODataErrorMessage getTranslatedMessage(final Locale locale) {
+    if (messageKey == null) {
+      return new ODataErrorMessage(getMessage(), DEFAULT_LOCALE);
+    }
+    ResourceBundle bundle = createResourceBundle(locale);
+    if (bundle == null) {
+      return new ODataErrorMessage(getMessage(), DEFAULT_LOCALE);
+    }
+
+    return buildMessage(bundle, locale);
+  }
+
+  /**
+   * <p>Gets the name of the {@link ResourceBundle} containing the exception 
texts.</p>
+   * <p>The key for an exception text is the concatenation of the 
exception-class name and
+   * the {@link MessageKey}, separated by a dot.</p>
+   * @return the name of the resource bundle
+   */
+  protected abstract String getBundleName();
+
+  private ResourceBundle createResourceBundle(final Locale locale) {
+    try {
+      return ResourceBundle.getBundle(getBundleName(), locale == null ? 
DEFAULT_LOCALE : locale);
+    } catch (final MissingResourceException e) {
+      LOG.error(e.getMessage(), e);
+      return null;
+    }
+  }
+
+  private ODataErrorMessage buildMessage(final ResourceBundle bundle, final 
Locale locale) {
+    String message = null;
+
+    try {
+      message = bundle.getString(getClass().getSimpleName() + '.' + 
messageKey.getKey());
+      StringBuilder builder = new StringBuilder();
+      Formatter f = new Formatter(builder, locale);
+      f.format(message, parameters);
+      f.close();
+      Locale usedLocale = bundle.getLocale();
+      if (Locale.ROOT.equals(usedLocale)) {
+        usedLocale = DEFAULT_LOCALE;
+      }
+      return new ODataErrorMessage(builder.toString(), usedLocale);
+    } catch (MissingResourceException e) {
+      return new ODataErrorMessage("Missing message for key '" + 
messageKey.getKey() + "'!", DEFAULT_LOCALE);
+    } catch (MissingFormatArgumentException e) {
+      return new ODataErrorMessage("Missing replacement for place holder in 
message '" + message +
+          "' for following arguments '" + Arrays.toString(parameters) + "'!", 
DEFAULT_LOCALE);
+    }
+  }
+
+  /** Error message text and {@link Locale} used for it. */
+  public class ODataErrorMessage {
+    String message;
+    Locale locale;
+
+    public ODataErrorMessage(final String message, final Locale usedLocale) {
+      this.message = message;
+      locale = usedLocale;
+    }
+
+    /** Gets the message text. */
+    public String getMessage() {
+      return message;
+    }
+
+    /** Gets the {@link Locale} used for this message. */
+    public Locale getLocale() {
+      return locale;
+    }
+  }
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataTranslatedException.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataTranslatedException.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataTranslatedException.java
deleted file mode 100644
index 09c2e7b..0000000
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/ODataTranslatedException.java
+++ /dev/null
@@ -1,159 +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.server.api;
-
-import java.util.Arrays;
-import java.util.Formatter;
-import java.util.Locale;
-import java.util.MissingFormatArgumentException;
-import java.util.MissingResourceException;
-import java.util.ResourceBundle;
-
-import org.apache.olingo.commons.api.ODataException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Abstract superclass of all translatable server exceptions.
- */
-public abstract class ODataTranslatedException extends ODataException {
-
-  private static final long serialVersionUID = -1210541002198287561L;
-  private static final Logger LOG = 
LoggerFactory.getLogger(ODataTranslatedException.class);
-  private static final Locale DEFAULT_LOCALE = Locale.ENGLISH;
-
-  protected static final String DEFAULT_SERVER_BUNDLE_NAME = 
"server-core-exceptions-i18n";
-
-  /** Key for the exception text in the resource bundle. */
-  public static interface MessageKey {
-    /** Gets this key. */
-    public String getKey();
-  }
-
-  private MessageKey messageKey;
-  private Object[] parameters;
-
-  protected ODataTranslatedException(final String developmentMessage, final 
MessageKey messageKey,
-      final String... parameters) {
-    super(developmentMessage);
-    this.messageKey = messageKey;
-    this.parameters = parameters;
-  }
-
-  protected ODataTranslatedException(final String developmentMessage, final 
Throwable cause,
-      final MessageKey messageKey,
-      final String... parameters) {
-    super(developmentMessage, cause);
-    this.messageKey = messageKey;
-    this.parameters = parameters;
-  }
-
-  @Override
-  public String getLocalizedMessage() {
-    return getTranslatedMessage(DEFAULT_LOCALE).getMessage();
-  }
-
-  @Override
-  public String toString() {
-    return getMessage();
-  }
-
-  /** Gets the message key. */
-  public MessageKey getMessageKey() {
-    return messageKey;
-  }
-
-  /**
-   * Gets the translated message text for a given locale (or the default 
locale if not available),
-   * returning the developer message text if none is found.
-   * @param locale the preferred {@link Locale}
-   * @return the error message
-   */
-  public ODataErrorMessage getTranslatedMessage(final Locale locale) {
-    if (messageKey == null) {
-      return new ODataErrorMessage(getMessage(), DEFAULT_LOCALE);
-    }
-    ResourceBundle bundle = createResourceBundle(locale);
-    if (bundle == null) {
-      return new ODataErrorMessage(getMessage(), DEFAULT_LOCALE);
-    }
-
-    return buildMessage(bundle, locale);
-  }
-
-  /**
-   * <p>Gets the name of the {@link ResourceBundle} containing the exception 
texts.</p>
-   * <p>The key for an exception text is the concatenation of the 
exception-class name and
-   * the {@link MessageKey}, separated by a dot.</p>
-   * @return the name of the resource bundle
-   */
-  protected abstract String getBundleName();
-
-  private ResourceBundle createResourceBundle(final Locale locale) {
-    try {
-      return ResourceBundle.getBundle(getBundleName(), locale == null ? 
DEFAULT_LOCALE : locale);
-    } catch (final MissingResourceException e) {
-      LOG.error(e.getMessage(), e);
-      return null;
-    }
-  }
-
-  private ODataErrorMessage buildMessage(final ResourceBundle bundle, final 
Locale locale) {
-    String message = null;
-
-    try {
-      message = bundle.getString(getClass().getSimpleName() + '.' + 
messageKey.getKey());
-      StringBuilder builder = new StringBuilder();
-      Formatter f = new Formatter(builder, locale);
-      f.format(message, parameters);
-      f.close();
-      Locale usedLocale = bundle.getLocale();
-      if (Locale.ROOT.equals(usedLocale)) {
-        usedLocale = DEFAULT_LOCALE;
-      }
-      return new ODataErrorMessage(builder.toString(), usedLocale);
-    } catch (MissingResourceException e) {
-      return new ODataErrorMessage("Missing message for key '" + 
messageKey.getKey() + "'!", DEFAULT_LOCALE);
-    } catch (MissingFormatArgumentException e) {
-      return new ODataErrorMessage("Missing replacement for place holder in 
message '" + message +
-          "' for following arguments '" + Arrays.toString(parameters) + "'!", 
DEFAULT_LOCALE);
-    }
-  }
-
-  /** Error message text and {@link Locale} used for it. */
-  public class ODataErrorMessage {
-    String message;
-    Locale locale;
-
-    public ODataErrorMessage(final String message, final Locale usedLocale) {
-      this.message = message;
-      locale = usedLocale;
-    }
-
-    /** Gets the message text. */
-    public String getMessage() {
-      return message;
-    }
-
-    /** Gets the {@link Locale} used for this message. */
-    public Locale getLocale() {
-      return locale;
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/batch/BatchFacade.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/batch/BatchFacade.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/batch/BatchFacade.java
index 5ac3c84..6692f93 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/batch/BatchFacade.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/batch/BatchFacade.java
@@ -6,9 +6,9 @@
  * 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
@@ -17,50 +17,58 @@
  * under the License.
  */package org.apache.olingo.server.api.batch;
 
- import org.apache.olingo.server.api.ODataRequest;
- import org.apache.olingo.server.api.ODataResponse;
- import 
org.apache.olingo.server.api.batch.exception.BatchDeserializerException;
- import org.apache.olingo.server.api.deserializer.batch.BatchRequestPart;
- import org.apache.olingo.server.api.deserializer.batch.ODataResponsePart;
+import org.apache.olingo.server.api.ODataLibraryException;
+import org.apache.olingo.server.api.ODataRequest;
+import org.apache.olingo.server.api.ODataResponse;
+import org.apache.olingo.server.api.batch.exception.BatchDeserializerException;
+import org.apache.olingo.server.api.deserializer.batch.BatchRequestPart;
+import org.apache.olingo.server.api.deserializer.batch.ODataResponsePart;
 
- /**
-  * Provides methods to process {@link ODataRequest} and {@link 
BatchRequestPart}.
-  *
-  * Within a {@link org.apache.olingo.server.api.processor.BatchProcessor} 
implementation BatchRequestsParts
-  * should be passed to {@link 
BatchFacade#handleBatchRequest(BatchRequestPart)}.
-  * If only if the BatchRequests part represents a change set, the request 
will be delegated to
-  * {@link 
org.apache.olingo.server.api.processor.BatchProcessor#processChangeSet(BatchFacade,
 java.util.List)}.
-  * Otherwise the requests will be directly executed.
-  *
-  * The processor implementation could use {@link 
BatchFacade#handleODataRequest(ODataRequest)} to processes
-  * requests in a change set.
-  */
- public interface BatchFacade {
-   /**
-    * Executes a ODataRequest, which must be a part of a change set.
-    * Each requests must have a Content-Id header field, which holds an id 
that is unique in the whole batch request.
-    *
-    * @param request ODataRequest to process
+/**
+ * Provides methods to process {@link ODataRequest} and {@link 
BatchRequestPart}.
+ *
+ * Within a {@link org.apache.olingo.server.api.processor.BatchProcessor} 
implementation BatchRequestsParts
+ * should be passed to {@link 
BatchFacade#handleBatchRequest(BatchRequestPart)}.
+ * If only if the BatchRequests part represents a change set, the request will 
be delegated to
+ * {@link 
org.apache.olingo.server.api.processor.BatchProcessor#processChangeSet(BatchFacade,
 java.util.List)}.
+ * Otherwise the requests will be directly executed.
+ *
+ * The processor implementation could use {@link 
BatchFacade#handleODataRequest(ODataRequest)} to processes
+ * requests in a change set.
+ */
+public interface BatchFacade {
+  /**
+   * Executes a ODataRequest, which must be a part of a change set.
+   * Each requests must have a Content-Id header field, which holds an id that 
is unique in the whole batch request.
+   *
+   * @param request ODataRequest to process
    * @return Corresponding ODataResult to the given request
    * @throws BatchDeserializerException
-    */
-   public ODataResponse handleODataRequest(ODataRequest request) throws 
BatchDeserializerException;
+   * @throws ODataLibraryException
+   */
+  public ODataResponse handleODataRequest(ODataRequest request) throws 
BatchDeserializerException,
+      ODataLibraryException;
 
   /**
-    * Handles a BatchRequestPart.
-    *
-    * @param request Request to process
+   * Handles a BatchRequestPart.
+   *
+   * @param request Request to process
    * @return Corresponding {@link ODataResponsePart}
-    * @throws BatchDeserializerException
-    */
-   public ODataResponsePart handleBatchRequest(BatchRequestPart request) 
throws BatchDeserializerException;
+   * @throws BatchDeserializerException
+   * @throws ODataLibraryException
+   */
+  public ODataResponsePart handleBatchRequest(BatchRequestPart request) throws 
BatchDeserializerException,
+      ODataLibraryException;
 
   /**
-    * Extracts the boundary of a multipart/mixed header.
+   * Extracts the boundary of a multipart/mixed header.
    * See RFC 2046#5.1
-    *
-    * @param contentType Content Type
+   *
+   * @param contentType Content Type
    * @return Boundary
-    */
-   public String extractBoundaryFromContentType(String contentType) throws 
BatchDeserializerException;
- }
+   * @throws BatchDeserializerException
+   * @throws ODataLibraryException
+   */
+  public String extractBoundaryFromContentType(String contentType) throws 
BatchDeserializerException,
+      ODataLibraryException;
+}

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/deserializer/DeserializerException.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/deserializer/DeserializerException.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/deserializer/DeserializerException.java
index d8d17dc..fd7e0ee 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/deserializer/DeserializerException.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/deserializer/DeserializerException.java
@@ -18,10 +18,10 @@
  */
 package org.apache.olingo.server.api.deserializer;
 
-import org.apache.olingo.server.api.ODataTranslatedException;
+import org.apache.olingo.server.api.ODataLibraryException;
 
 /** Exception thrown by deserializers. */
-public class DeserializerException extends ODataTranslatedException {
+public class DeserializerException extends ODataLibraryException {
 
   private static final long serialVersionUID = 6341270437497060906L;
 

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexCollectionProcessor.java
index 88003c9..245ccfb 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexCollectionProcessor.java
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,8 @@ public interface ActionComplexCollectionProcessor extends 
Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void processActionComplexCollection(ODataRequest request, ODataResponse 
response, UriInfo uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-          throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexProcessor.java
index 6c25059..49fd8f2 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexProcessor.java
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,8 @@ public interface ActionComplexProcessor extends Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void processActionComplex(ODataRequest request, ODataResponse response, 
UriInfo uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-          throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityCollectionProcessor.java
index 1e5a122..bfa70a0 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityCollectionProcessor.java
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,8 @@ public interface ActionEntityCollectionProcessor extends 
Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void processActionEntityCollection(ODataRequest request, ODataResponse 
response, UriInfo uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-          throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityProcessor.java
index 117c2ca..c0b1263 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityProcessor.java
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,8 @@ public interface ActionEntityProcessor extends Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void processActionEntity(ODataRequest request, ODataResponse response, 
UriInfo uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-          throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveCollectionProcessor.java
index 35ef6c9..31d5fe7 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveCollectionProcessor.java
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,8 @@ public interface ActionPrimitiveCollectionProcessor extends 
Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void processActionPrimitiveCollection(ODataRequest request, ODataResponse 
response, UriInfo uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-          throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveProcessor.java
index 40f3f4e..0905aeb 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveProcessor.java
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,8 @@ public interface ActionPrimitiveProcessor extends Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void processActionPrimitive(ODataRequest request, ODataResponse response, 
UriInfo uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-          throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionVoidProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionVoidProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionVoidProcessor.java
index bfdcb6d..3d5dae2 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionVoidProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionVoidProcessor.java
@@ -20,9 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -36,8 +36,8 @@ public interface ActionVoidProcessor extends Processor {
    * @param uriInfo information about a parsed OData URI
    * @param requestFormat content type of body sent with request
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
+   * @throws ODataLibraryException
    */
   void processActionVoid(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType requestFormat)
-      throws ODataApplicationException, DeserializerException;
+      throws ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/BatchProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/BatchProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/BatchProcessor.java
index de4586f..e61f758 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/BatchProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/BatchProcessor.java
@@ -20,6 +20,7 @@ package org.apache.olingo.server.api.processor;
 
 import java.util.List;
 
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
 import org.apache.olingo.server.api.batch.BatchFacade;
@@ -39,9 +40,10 @@ public interface BatchProcessor extends Processor {
    * @param response OData response object for collecting response data
    * @throws BatchSerializerException if the service implementation encounters 
a failure
    * @throws BatchDeserializerException if de-serialization failed
+   * @throws ODataLibraryException
    */
   void processBatch(BatchFacade facade, ODataRequest request, ODataResponse 
response)
-      throws BatchSerializerException, BatchDeserializerException;
+      throws BatchSerializerException, BatchDeserializerException, 
ODataLibraryException;
 
   /**
    * Process a batch change set (containing several batch requests)
@@ -49,7 +51,8 @@ public interface BatchProcessor extends Processor {
    * @param facade BatchFacade which should be used for further batch part 
handling
    * @param requests List of ODataRequests which are included in the to be 
processed change set
    * @throws BatchDeserializerException if de-serialization failed
+   * @throws ODataLibraryException
    */
   ODataResponsePart processChangeSet(BatchFacade facade, List<ODataRequest> 
requests)
-      throws BatchDeserializerException;
+      throws BatchDeserializerException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexCollectionProcessor.java
index bfc26ea..97b86d9 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexCollectionProcessor.java
@@ -6,9 +6,9 @@
  * 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
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -40,10 +39,10 @@ public interface ComplexCollectionProcessor extends 
Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readComplexCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Update (replace) complex-type collection with send data in the 
persistence and
@@ -56,12 +55,10 @@ public interface ComplexCollectionProcessor extends 
Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if de-serialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void updateComplexCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-      throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 
   /**
    * Deletes complex-type collection from an entity and puts the status into 
the response.
@@ -71,7 +68,8 @@ public interface ComplexCollectionProcessor extends Processor 
{
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
+   * @throws ODataLibraryException
    */
   void deleteComplexCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo)
-      throws ODataApplicationException;
+      throws ODataApplicationException, ODataLibraryException;
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexProcessor.java
index 847b101..72acfb3 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexProcessor.java
@@ -6,9 +6,9 @@
  * 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
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -39,10 +38,10 @@ public interface ComplexProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readComplex(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Update complex-type instance with send data in the persistence and
@@ -53,12 +52,10 @@ public interface ComplexProcessor extends Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if de-serialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void updateComplex(ODataRequest request, ODataResponse response, UriInfo 
uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-      throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 
   /**
    * Deletes complex-type value from an entity and puts the status into the 
response.
@@ -68,7 +65,8 @@ public interface ComplexProcessor extends Processor {
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
+   * @throws ODataLibraryException
    */
   void deleteComplex(ODataRequest request, ODataResponse response, UriInfo 
uriInfo)
-      throws ODataApplicationException;
+      throws ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountComplexCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountComplexCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountComplexCollectionProcessor.java
index f038ac6..29e96d6 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountComplexCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountComplexCollectionProcessor.java
@@ -19,9 +19,9 @@
 package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -36,8 +36,8 @@ public interface CountComplexCollectionProcessor extends 
Processor {
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void countComplexCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountEntityCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountEntityCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountEntityCollectionProcessor.java
index 1a1c7e0..65935dc 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountEntityCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountEntityCollectionProcessor.java
@@ -19,9 +19,9 @@
 package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -36,8 +36,8 @@ public interface CountEntityCollectionProcessor extends 
Processor {
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void countEntityCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountPrimitiveCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountPrimitiveCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountPrimitiveCollectionProcessor.java
index 88791ca..e9fe641 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountPrimitiveCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountPrimitiveCollectionProcessor.java
@@ -19,9 +19,9 @@
 package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -36,8 +36,8 @@ public interface CountPrimitiveCollectionProcessor extends 
Processor {
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void countPrimitiveCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java
index 7be6b4d..d7da6fd 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java
@@ -24,14 +24,14 @@ import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.commons.api.format.ODataFormat;
 import org.apache.olingo.commons.api.http.HttpHeader;
 import org.apache.olingo.commons.api.http.HttpStatusCode;
-import org.apache.olingo.server.api.ODataServerError;
 import org.apache.olingo.server.api.OData;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
+import org.apache.olingo.server.api.ODataServerError;
 import org.apache.olingo.server.api.ServiceMetadata;
 import org.apache.olingo.server.api.serializer.ODataSerializer;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -54,7 +54,7 @@ public class DefaultProcessor implements MetadataProcessor, 
ServiceDocumentProce
 
   @Override
   public void readServiceDocument(final ODataRequest request, final 
ODataResponse response, final UriInfo uriInfo,
-      final ContentType requestedContentType) throws 
ODataApplicationException, SerializerException {
+      final ContentType requestedContentType) throws 
ODataApplicationException, ODataLibraryException {
     ODataSerializer serializer = 
odata.createSerializer(ODataFormat.fromContentType(requestedContentType));
     response.setContent(serializer.serviceDocument(serviceMetadata.getEdm(), 
null).getContent());
     response.setStatusCode(HttpStatusCode.OK.getStatusCode());
@@ -63,7 +63,7 @@ public class DefaultProcessor implements MetadataProcessor, 
ServiceDocumentProce
 
   @Override
   public void readMetadata(final ODataRequest request, final ODataResponse 
response, final UriInfo uriInfo,
-      final ContentType requestedContentType) throws 
ODataApplicationException, SerializerException {
+      final ContentType requestedContentType) throws 
ODataApplicationException, ODataLibraryException {
     ODataSerializer serializer = 
odata.createSerializer(ODataFormat.fromContentType(requestedContentType));
     
response.setContent(serializer.metadataDocument(serviceMetadata).getContent());
     response.setStatusCode(HttpStatusCode.OK.getStatusCode());

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DeltaProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DeltaProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DeltaProcessor.java
index 1892715..0be8371 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DeltaProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DeltaProcessor.java
@@ -32,8 +32,8 @@ public interface DeltaProcessor extends Processor {
   //   * @param uriInfo  information of a parsed OData URI
   //   * @param responseFormat   requested content type after content 
negotiation
   //   * @throws ODataApplicationException if the service implementation 
encounters a failure
-  //   * @throws SerializerException       if serialization failed
+  //   * @throws ODataLibraryException
   //   */
   //  void readDelta(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType responseFormat)
-  //      throws ODataApplicationException, SerializerException;
+  //      throws ODataApplicationException, ODataLibraryException;
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityCollectionProcessor.java
index fbca861..7e0db59 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityCollectionProcessor.java
@@ -20,9 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -37,9 +37,9 @@ public interface EntityCollectionProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readEntityCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java
index 7922580..16d8a5e 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java
@@ -6,9 +6,9 @@
  * 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
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,10 @@ public interface EntityProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readEntity(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Creates an entity with send data in the persistence and puts content, 
status, and Location into the response.
@@ -51,12 +50,10 @@ public interface EntityProcessor extends Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void createEntity(ODataRequest request, ODataResponse response, UriInfo 
uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-      throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 
   /**
    * Update entity data with send data in the persistence and puts content, 
status, and Location into the response.
@@ -66,12 +63,10 @@ public interface EntityProcessor extends Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void updateEntity(ODataRequest request, ODataResponse response, UriInfo 
uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-      throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 
   /**
    * Deletes entity from persistence and puts the status into the response.
@@ -79,7 +74,9 @@ public interface EntityProcessor extends Processor {
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
+   * @throws ODataLibraryException
    */
-  void deleteEntity(ODataRequest request, ODataResponse response, UriInfo 
uriInfo) throws ODataApplicationException;
+  void deleteEntity(ODataRequest request, ODataResponse response, UriInfo 
uriInfo) throws ODataApplicationException,
+      ODataLibraryException;
 
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MediaEntityProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MediaEntityProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MediaEntityProcessor.java
index f8ad6aa..75bb21e 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MediaEntityProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MediaEntityProcessor.java
@@ -6,9 +6,9 @@
  * 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
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,10 @@ public interface MediaEntityProcessor extends 
EntityProcessor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readMediaEntity(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Creates an entity with send media data in the persistence and puts 
content, status and Location into the response.
@@ -51,12 +50,10 @@ public interface MediaEntityProcessor extends 
EntityProcessor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void createMediaEntity(ODataRequest request, ODataResponse response, UriInfo 
uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-      throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 
   /**
    * Updates entity media data in the persistence and puts content and status 
into the response.
@@ -66,10 +63,8 @@ public interface MediaEntityProcessor extends 
EntityProcessor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void updateMediaEntity(ODataRequest request, ODataResponse response, UriInfo 
uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-          throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java
index 75f7e7a..caaf8ad 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java
@@ -20,9 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -37,8 +37,8 @@ public interface MetadataProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readMetadata(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveCollectionProcessor.java
index 10eca43..9dd805a 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveCollectionProcessor.java
@@ -6,9 +6,9 @@
  * 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
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -40,11 +39,10 @@ public interface PrimitiveCollectionProcessor extends 
Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readPrimitiveCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo,
-      ContentType responseFormat)
-          throws ODataApplicationException, SerializerException;
+      ContentType responseFormat) throws ODataApplicationException, 
ODataLibraryException;
 
   /**
    * Update (replace) primitive-type collection with send data in the 
persistence and
@@ -57,12 +55,10 @@ public interface PrimitiveCollectionProcessor extends 
Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void updatePrimitiveCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo,
-      ContentType requestFormat, ContentType responseFormat)
-      throws ODataApplicationException, DeserializerException, 
SerializerException;
+      ContentType requestFormat, ContentType responseFormat) throws 
ODataApplicationException, ODataLibraryException;
 
   /**
    * Deletes primitive-type collection from an entity and puts the status into 
the response.
@@ -72,7 +68,8 @@ public interface PrimitiveCollectionProcessor extends 
Processor {
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
+   * @throws ODataLibraryException
    */
   void deletePrimitiveCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo)
-      throws ODataApplicationException;
+      throws ODataApplicationException, ODataLibraryException;
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveProcessor.java
index f155a3e..517da55 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveProcessor.java
@@ -6,9 +6,9 @@
  * 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
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -40,10 +39,10 @@ public interface PrimitiveProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readPrimitive(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Update primitive-type instance with send data in the persistence and
@@ -54,12 +53,11 @@ public interface PrimitiveProcessor extends Processor {
    * @param requestFormat content type of body sent with request
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if deserialization failed
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void updatePrimitive(ODataRequest request, ODataResponse response, UriInfo 
uriInfo,
       ContentType requestFormat, ContentType responseFormat)
-      throws ODataApplicationException, DeserializerException, 
SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Deletes primitive-type value from an entity and puts the status into the 
response.
@@ -69,8 +67,9 @@ public interface PrimitiveProcessor extends Processor {
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
+   * @throws ODataLibraryException
    */
   void deletePrimitive(ODataRequest request, ODataResponse response, UriInfo 
uriInfo)
-      throws ODataApplicationException;
+      throws ODataApplicationException, ODataLibraryException;
 
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveValueProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveValueProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveValueProcessor.java
index 34c5aed..7478ec6 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveValueProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveValueProcessor.java
@@ -20,9 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -39,8 +39,8 @@ public interface PrimitiveValueProcessor extends 
PrimitiveProcessor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws org.apache.olingo.server.api.ODataApplicationException if the 
service implementation encounters a failure
-   * @throws org.apache.olingo.server.api.serializer.SerializerException if 
serialization failed
+   * @throws ODataLibraryException
    */
   void readPrimitiveValue(ODataRequest request, ODataResponse response, 
UriInfo uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceCollectionProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceCollectionProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceCollectionProcessor.java
index b087c76..07ae60d 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceCollectionProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceCollectionProcessor.java
@@ -6,9 +6,9 @@
  * 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
@@ -20,9 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,9 +38,8 @@ public interface ReferenceCollectionProcessor extends 
Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readReferenceCollection(ODataRequest request, ODataResponse response, 
UriInfo uriInfo,
-      ContentType responseFormat)
-          throws ODataApplicationException, SerializerException;
+      ContentType responseFormat) throws ODataApplicationException, 
ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceProcessor.java
index 5420e38..b2547c0 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceProcessor.java
@@ -20,10 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.deserializer.DeserializerException;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -38,10 +37,10 @@ public interface ReferenceProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readReference(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Creates entity reference in the persistence and puts content, status, and 
Location into the response.
@@ -50,10 +49,10 @@ public interface ReferenceProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param requestFormat content type of body sent with request
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if de-serialization failed
+   * @throws ODataLibraryException
    */
   void createReference(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType requestFormat)
-      throws ODataApplicationException, DeserializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Update entity reference in the persistence and puts content, status, and 
Location into the response.
@@ -62,10 +61,10 @@ public interface ReferenceProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param requestFormat content type of body sent with request
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws DeserializerException if de-serialization failed
+   * @throws ODataLibraryException
    */
   void updateReference(ODataRequest request, ODataResponse response, UriInfo 
uriInfo, ContentType requestFormat)
-      throws ODataApplicationException, DeserializerException;
+      throws ODataApplicationException, ODataLibraryException;
 
   /**
    * Deletes reference to an entity from persistence and puts the status into 
the response.
@@ -75,7 +74,8 @@ public interface ReferenceProcessor extends Processor {
    * @param response OData response object for collecting response data
    * @param uriInfo information of a parsed OData URI
    * @throws ODataApplicationException if the service implementation 
encounters a failure
+   * @throws ODataLibraryException
    */
   void deleteReference(ODataRequest request, ODataResponse response, UriInfo 
uriInfo)
-      throws ODataApplicationException;
+      throws ODataApplicationException, ODataLibraryException;
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java
index ebbd7e6..74a58c6 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ServiceDocumentProcessor.java
@@ -20,9 +20,9 @@ package org.apache.olingo.server.api.processor;
 
 import org.apache.olingo.commons.api.format.ContentType;
 import org.apache.olingo.server.api.ODataApplicationException;
+import org.apache.olingo.server.api.ODataLibraryException;
 import org.apache.olingo.server.api.ODataRequest;
 import org.apache.olingo.server.api.ODataResponse;
-import org.apache.olingo.server.api.serializer.SerializerException;
 import org.apache.olingo.server.api.uri.UriInfo;
 
 /**
@@ -37,8 +37,8 @@ public interface ServiceDocumentProcessor extends Processor {
    * @param uriInfo information of a parsed OData URI
    * @param responseFormat requested content type after content negotiation
    * @throws ODataApplicationException if the service implementation 
encounters a failure
-   * @throws SerializerException if serialization failed
+   * @throws ODataLibraryException
    */
   void readServiceDocument(ODataRequest request, ODataResponse response, 
UriInfo uriInfo, ContentType responseFormat)
-      throws ODataApplicationException, SerializerException;
+      throws ODataApplicationException, ODataLibraryException;
 }

http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/b8187f53/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerException.java
----------------------------------------------------------------------
diff --git 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerException.java
 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerException.java
index df38286..8a65976 100644
--- 
a/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerException.java
+++ 
b/lib/server-api/src/main/java/org/apache/olingo/server/api/serializer/SerializerException.java
@@ -18,10 +18,10 @@
  */
 package org.apache.olingo.server.api.serializer;
 
-import org.apache.olingo.server.api.ODataTranslatedException;
+import org.apache.olingo.server.api.ODataLibraryException;
 
 /** Exception thrown by the {@link ODataSerializer}. */
-public class SerializerException extends ODataTranslatedException {
+public class SerializerException extends ODataLibraryException {
 
   private static final long serialVersionUID = 5358683245923127425L;
 

Reply via email to