http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/lib/server-api/src/main/java/org/apache/olingo/server/api/edmx/EdmxReferenceIncludeAnnotation.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/edmx/EdmxReferenceIncludeAnnotation.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/edmx/EdmxReferenceIncludeAnnotation.java deleted file mode 100644 index 9d6b6ab..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/edmx/EdmxReferenceIncludeAnnotation.java +++ /dev/null @@ -1,93 +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.edmx; - -/** - * POJO for Edmx Reference Include Annotation. - */ -public class EdmxReferenceIncludeAnnotation { - private final String termNamespace; - private String qualifier; - private String targetNamespace; - - /** - * Create include annotation with given termNamespace and empty qualifier and targetNamespace. - * - * @param termNamespace of include annotation - */ - public EdmxReferenceIncludeAnnotation(String termNamespace) { - this(termNamespace, null, null); - } - - /** - * Create include annotation with given termNamespace, qualifier and targetNamespace. - * - * @param termNamespace of include annotation - * @param qualifier of include annotation - * @param targetNamespace of include annotation - */ - public EdmxReferenceIncludeAnnotation(String termNamespace, String qualifier, String targetNamespace) { - this.termNamespace = termNamespace; - this.qualifier = qualifier; - this.targetNamespace = targetNamespace; - } - - /** - * @return TermNamespace of the include annotation - */ - public String getTermNamespace() { - return termNamespace; - } - - /** - * @return Qualifier if one defined; null otherwise - */ - public String getQualifier() { - return qualifier; - } - - /** - * Set qualifier for this include annotation. - * - * @param qualifier for include annotation - * @return this include annotation - */ - public EdmxReferenceIncludeAnnotation setQualifier(String qualifier) { - this.qualifier = qualifier; - return this; - } - - /** - * @return targetNamespace if defined; null otherwise - */ - public String getTargetNamespace() { - return targetNamespace; - } - - /** - * Set target namespace for this include annotation. - * - * @param targetNamespace for include annotation - * @return this include annotation - */ - public EdmxReferenceIncludeAnnotation setTargetNamespace(String targetNamespace) { - this.targetNamespace = targetNamespace; - return this; - } -} \ No newline at end of file
http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 31c525f..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexCollectionProcessor.java +++ /dev/null @@ -1,48 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an action import request which has a - * return type of ComplexCollection. - */ -public interface ActionComplexCollectionProcessor extends ComplexCollectionProcessor { - /** - * Process an action which has as return type a complex-type collection. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @param requestFormat content type of body sent with request - * @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.deserializer.DeserializerException if deserialization failed - * @throws org.apache.olingo.server.api.serializer.SerializerException if serialization failed - */ - void processActionComplexCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 11e8345..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionComplexProcessor.java +++ /dev/null @@ -1,48 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an action import request which has a - * return type of Complex. - */ -public interface ActionComplexProcessor extends ComplexProcessor { - /** - * Process an action which has as return type a complex-type. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @param requestFormat content type of body sent with request - * @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.deserializer.DeserializerException if deserialization failed - * @throws org.apache.olingo.server.api.serializer.SerializerException if serialization failed - */ - void processActionComplex(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType requestFormat, - ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index edabfce..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityCollectionProcessor.java +++ /dev/null @@ -1,48 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an action import request which has a - * return type of Entity Collection. - */ -public interface ActionEntityCollectionProcessor extends EntityCollectionProcessor { - /** - * Process an action which has as return type a collection of entities. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @param requestFormat content type of body sent with request - * @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.deserializer.DeserializerException if deserialization failed - * @throws org.apache.olingo.server.api.serializer.SerializerException if serialization failed - */ - void processActionEntityCollection(ODataRequest request, ODataResponse response, - UriInfo uriInfo, ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 8a2043e..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionEntityProcessor.java +++ /dev/null @@ -1,48 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an action import request which has a - * return type of Entity. - */ -public interface ActionEntityProcessor extends EntityProcessor { - /** - * Process an action which has as return type an entity. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @param requestFormat content type of body sent with request - * @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.deserializer.DeserializerException if deserialization failed - * @throws org.apache.olingo.server.api.serializer.SerializerException if serialization failed - */ - void processActionEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType requestFormat, - ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 9fd7549..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveCollectionProcessor.java +++ /dev/null @@ -1,48 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an action import request which has a - * return type of Primitive Collection. - */ -public interface ActionPrimitiveCollectionProcessor extends PrimitiveCollectionProcessor { - /** - * Process an action which has as return type a primitive-type collection. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @param requestFormat content type of body sent with request - * @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.deserializer.DeserializerException if deserialization failed - * @throws org.apache.olingo.server.api.serializer.SerializerException if serialization failed - */ - void processActionPrimitiveCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 362621b..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ActionPrimitiveProcessor.java +++ /dev/null @@ -1,48 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an action import request which has a - * return type of Primitive. - */ -public interface ActionPrimitiveProcessor extends PrimitiveProcessor { - /** - * Process an action which has as return type a primitive-type. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @param requestFormat content type of body sent with request - * @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.deserializer.DeserializerException if deserialization failed - * @throws org.apache.olingo.server.api.serializer.SerializerException if serialization failed - */ - void processActionPrimitive(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index d0f828d..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/BatchProcessor.java +++ /dev/null @@ -1,56 +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.processor; - -import java.util.List; - -import org.apache.olingo.server.api.ODataRequest; -import org.apache.olingo.server.api.ODataResponse; -import org.apache.olingo.server.api.batch.BatchFacade; -import org.apache.olingo.server.api.batch.exception.BatchDeserializerException; -import org.apache.olingo.server.api.batch.exception.BatchSerializerException; -import org.apache.olingo.server.api.deserializer.batch.ODataResponsePart; - -/** - * Processor interface for handling a single instance of an Entity Type. - */ -public interface BatchProcessor extends Processor { - - /** - * Process a complete batch request and puts serialized content and status into the response. - * @param facade BatchFacade which should be used for further batch part handling - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @throws BatchException if the service implementation encounters a failure - * @throws BatchDeserializerException if de-serialization failed - */ - void processBatch(BatchFacade facade, ODataRequest request, ODataResponse response) - throws BatchSerializerException, BatchDeserializerException; - - - /** - * Process a batch change set (containing several batch requests) - * and puts serialized content and status into the response. - * @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 - */ - ODataResponsePart processChangeSet(BatchFacade facade, List<ODataRequest> requests) - throws BatchDeserializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 1fe0b0c..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexCollectionProcessor.java +++ /dev/null @@ -1,77 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling a collection of complex-type instances, e.g., - * a property of an entity defined as collection of complex-type instances. - */ -public interface ComplexCollectionProcessor extends Processor { - - /** - * Reads complex-type collection. - * If it is not available, for example due to permissions, the service responds with 404 Not Found. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readComplexCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) - throws ODataApplicationException, SerializerException; - - /** - * Update (replace) complex-type collection with send data in the persistence and - * puts content, status, and Location into the response. - * Update of complex-type collection is equal to a complete replace - * of the property (see chapter "11.4.9.4 Update a Collection Property"). - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @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 - */ - void updateComplexCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; - - /** - * Deletes complex-type collection from an entity and puts the status into the response. - * Deletion for complex-type collection is equal to - * set the content to <code>EMPTY</code>. - * @param request OData request object containing raw HTTP information - * @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 - */ - void deleteComplexCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo) - throws ODataApplicationException; -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 58d9bc8..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ComplexProcessor.java +++ /dev/null @@ -1,74 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an instance of a complex type, e.g., a complex property of an entity. - */ -public interface ComplexProcessor extends Processor { - - /** - * Reads complex-type instance. - * If it is not available, for example due to permissions, the service responds with 404 Not Found. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readComplex(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) - throws ODataApplicationException, SerializerException; - - /** - * Update complex-type instance with send data in the persistence and - * puts content, status, and Location into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @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 - */ - void updateComplex(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; - - /** - * Deletes complex-type value from an entity and puts the status into the response. - * Deletion for complex-type values is equal to - * set the value to <code>NULL</code> (see chapter "11.4.9.2 Set a Value to Null") - * @param request OData request object containing raw HTTP information - * @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 - */ - void deleteComplex(ODataRequest request, ODataResponse response, UriInfo uriInfo) - throws ODataApplicationException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 29b1528..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountComplexCollectionProcessor.java +++ /dev/null @@ -1,43 +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.processor; - -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling counting a collection of complex properties, e.g. an EdmComplexType. - */ -public interface CountComplexCollectionProcessor extends Processor { - - /** - * Counts complex properties from persistence and puts serialized content and status into the response. - * Response content type is <code>text/plain</code> by default. - * @param request OData request object containing raw HTTP information. - * @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 - */ - void countComplexCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo) - throws ODataApplicationException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index d64c6ce..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountEntityCollectionProcessor.java +++ /dev/null @@ -1,43 +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.processor; - -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling counting a collection of entities, e.g. an Entity Set. - */ -public interface CountEntityCollectionProcessor extends Processor { - - /** - * Counts entities from persistence and puts serialized content and status into the response. - * Response content type is <code>text/plain</code> by default. - * @param request OData request object containing raw HTTP information. - * @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 - */ - void countEntityCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo) - throws ODataApplicationException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 31c76ee..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/CountPrimitiveCollectionProcessor.java +++ /dev/null @@ -1,43 +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.processor; - -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling counting a collection of primitive properties, e.g. an collection of EdmString. - */ -public interface CountPrimitiveCollectionProcessor extends Processor { - - /** - * Counts primitive properties from persistence and puts serialized content and status into the response. - * Response content type is <code>text/plain</code> by default. - * @param request OData request object containing raw HTTP information. - * @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 - */ - void countPrimitiveCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo) - throws ODataApplicationException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 302959a..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DefaultProcessor.java +++ /dev/null @@ -1,91 +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.processor; - -import java.io.ByteArrayInputStream; - -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.OData; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * <p>Processor implementation for handling default cases: - * <ul><li>request for the metadata document</li> - * <li>request for the service document</li> - * <li>error handling</li></ul></p> - * <p>This implementation is registered in the ODataHandler by default. - * The default can be replaced by re-registering a custom implementation.</p> - */ -public class DefaultProcessor implements MetadataProcessor, ServiceDocumentProcessor, ErrorProcessor { - private OData odata; - private ServiceMetadata serviceMetadata; - - @Override - public void init(final OData odata, final ServiceMetadata serviceMetadata) { - this.odata = odata; - this.serviceMetadata = serviceMetadata; - } - - @Override - public void readServiceDocument(final ODataRequest request, final ODataResponse response, final UriInfo uriInfo, - final ContentType requestedContentType) throws ODataApplicationException, SerializerException { - ODataSerializer serializer = odata.createSerializer(ODataFormat.fromContentType(requestedContentType)); - response.setContent(serializer.serviceDocument(serviceMetadata.getEdm(), request.getRawBaseUri())); - response.setStatusCode(HttpStatusCode.OK.getStatusCode()); - response.setHeader(HttpHeader.CONTENT_TYPE, requestedContentType.toContentTypeString()); - } - - @Override - public void readMetadata(final ODataRequest request, final ODataResponse response, final UriInfo uriInfo, - final ContentType requestedContentType) throws ODataApplicationException, SerializerException { - ODataSerializer serializer = odata.createSerializer(ODataFormat.fromContentType(requestedContentType)); - response.setContent(serializer.metadataDocument(serviceMetadata)); - response.setStatusCode(HttpStatusCode.OK.getStatusCode()); - response.setHeader(HttpHeader.CONTENT_TYPE, requestedContentType.toContentTypeString()); - } - - @Override - public void processError(ODataRequest request, ODataResponse response, ODataServerError serverError, - ContentType requestedContentType) { - try { - ODataSerializer serializer = odata.createSerializer(ODataFormat.fromContentType(requestedContentType)); - response.setContent(serializer.error(serverError)); - response.setStatusCode(serverError.getStatusCode()); - response.setHeader(HttpHeader.CONTENT_TYPE, requestedContentType.toContentTypeString()); - } catch (Exception e) { - // This should never happen but to be sure we have this catch here to prevent sending a stacktrace to a client. - String responseContent = - "{\"error\":{\"code\":null,\"message\":\"An unexpected exception occurred during " + - "error processing with message: " + e.getMessage() + "\"}}"; - response.setContent(new ByteArrayInputStream(responseContent.getBytes())); - response.setStatusCode(HttpStatusCode.INTERNAL_SERVER_ERROR.getStatusCode()); - response.setHeader(HttpHeader.CONTENT_TYPE, ContentType.APPLICATION_JSON.toContentTypeString()); - } - } -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index a834657..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/DeltaProcessor.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.server.api.processor; - -/** - * Processor interface for handling a single instance of an Delta Response. - */ -public interface DeltaProcessor extends Processor { - -// NOT YET AVAILABLE -// /** -// * Reads delta information from persistence and put it as serialized content and -// * with according status into the response. -// * @param request OData request object containing raw HTTP information -// * @param response OData response object for collecting response data -// * @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 -// */ -// void readDelta(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) -// throws ODataApplicationException, SerializerException; -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index de96ab5..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityCollectionProcessor.java +++ /dev/null @@ -1,45 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling a collection of entities, e.g., an Entity Set. - */ -public interface EntityCollectionProcessor extends Processor { - - /** - * Reads entities data from persistence and puts serialized content and status into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readEntityCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) - throws ODataApplicationException, SerializerException; - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index dbce4f2..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/EntityProcessor.java +++ /dev/null @@ -1,85 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling a single instance of an Entity Type. - */ -public interface EntityProcessor extends Processor { - - /** - * Reads entity data from persistence and puts serialized content and status into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) - throws ODataApplicationException, SerializerException; - - /** - * Creates an entity with send data in the persistence and puts content, status, and Location into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @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 - */ - void createEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; - - /** - * Update entity data with send data in the persistence and puts content, status, and Location into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @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 - */ - void updateEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; - - /** - * Deletes entity from persistence and puts the status into the response. - * @param request OData request object containing raw HTTP information - * @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 - */ - void deleteEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo) throws ODataApplicationException; - -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ErrorProcessor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ErrorProcessor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ErrorProcessor.java deleted file mode 100644 index 145fb5b..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ErrorProcessor.java +++ /dev/null @@ -1,41 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataRequest; -import org.apache.olingo.server.api.ODataResponse; -import org.apache.olingo.server.api.ODataServerError; - -/** - * Processor which is called if any error/exception occurs inside the library or another processor. - */ -public interface ErrorProcessor extends Processor { - - /** - * Processes an error/exception. MUST NOT throw an exception! - * - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param serverError the server error - * @param responseFormat requested content type after content negotiation - */ - public void processError(ODataRequest request, ODataResponse response, ODataServerError serverError, - ContentType responseFormat); -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index e700fa1..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MediaEntityProcessor.java +++ /dev/null @@ -1,75 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling Entity Media. - */ -public interface MediaEntityProcessor extends EntityProcessor { - - /** - * Reads entity media data from persistence and puts content and status into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readMediaEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) - throws ODataApplicationException, SerializerException; - - /** - * Creates an entity with send media data in the persistence and puts content, status and Location into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @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 - */ - void createMediaEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; - - /** - * Updates entity media data in the persistence and puts content and status into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @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 - */ - void updateMediaEntity(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 5faa56d..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/MetadataProcessor.java +++ /dev/null @@ -1,44 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling the metadata document. - */ -public interface MetadataProcessor extends Processor { - - /** - * Reads data from persistence and puts serialized content and status into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readMetadata(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) - throws ODataApplicationException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 07f3678..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveCollectionProcessor.java +++ /dev/null @@ -1,78 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling a collection of primitive-type instances, e.g., - * a property of an entity defined as collection of primitive-type instances. - */ -public interface PrimitiveCollectionProcessor extends Processor { - - /** - * Reads primitive-type collection. - * If it is not available, for example due to permissions, the service responds with 404 Not Found. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readPrimitiveCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType responseFormat) - throws ODataApplicationException, SerializerException; - - /** - * Update (replace) primitive-type collection with send data in the persistence and - * puts content, status, and Location into the response. - * Update of primitive-type collection is equal to a complete replace - * of the property (see chapter "11.4.9.4 Update a Collection Property"). - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @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 - */ - void updatePrimitiveCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; - - /** - * Deletes primitive-type collection from an entity and puts the status into the response. - * Deletion for primitive-type collection is equal to - * set the content to <code>EMPTY</code>. - * @param request OData request object containing raw HTTP information - * @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 - */ - void deletePrimitiveCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo) - throws ODataApplicationException; -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 8c24060..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveProcessor.java +++ /dev/null @@ -1,76 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an instance of a primitive type, e.g., a primitive property of an entity. - */ -public interface PrimitiveProcessor extends Processor { - - /** - * Reads primitive-type instance. - * If its value is <code>null</code>, the service responds with 204 No Content. - * If it is not available, for example due to permissions, the service responds with 404 Not Found. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readPrimitive(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) - throws ODataApplicationException, SerializerException; - - /** - * Update primitive-type instance with send data in the persistence and - * puts content, status, and Location into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @param uriInfo information of a parsed OData URI - * @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 - */ - void updatePrimitive(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType requestFormat, ContentType responseFormat) - throws ODataApplicationException, DeserializerException, SerializerException; - - /** - * Deletes primitive-type value from an entity and puts the status into the response. - * Deletion for primitive-type values is equal to - * set the value to <code>NULL</code> (see chapter "11.4.9.2 Set a Value to Null") - * @param request OData request object containing raw HTTP information - * @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 - */ - void deletePrimitive(ODataRequest request, ODataResponse response, UriInfo uriInfo) - throws ODataApplicationException; - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 0770c2e..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/PrimitiveValueProcessor.java +++ /dev/null @@ -1,46 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling an instance of a primitive type, e.g., a primitive property of an entity. - */ -public interface PrimitiveValueProcessor extends PrimitiveProcessor { - - /** - * Reads raw value of a primitive-type instance, e.g., of a primitive property of an entity. - * If the value is <code>null</code>, the service responds with 204 No Content. - * If it is not available, for example due to permissions, the service responds with 404 Not Found. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readPrimitiveValue(ODataRequest request, ODataResponse response, UriInfo uriInfo, ContentType responseFormat) - throws ODataApplicationException, SerializerException; -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java ---------------------------------------------------------------------- diff --git a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java b/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java deleted file mode 100644 index 2b5eec2..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/Processor.java +++ /dev/null @@ -1,38 +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.processor; - -import org.apache.olingo.server.api.OData; -import org.apache.olingo.server.api.ServiceMetadata; - -/** - * <p>Base interface for all processor types.</p> - * <p>Processors are responsible to read and write data and marshalling content - * within a request - response cycle.</p> - */ -public interface Processor { - - /** - * Initializes the processor for each HTTP request - response cycle. - * @param odata Olingo's root object, acting as a factory for various object types - * @param serviceMetadata metadata of the OData service like the EDM that have to be created - * before the OData request handling takes place - */ - void init(OData odata, ServiceMetadata serviceMetadata); -} http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/f7a7b484/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 deleted file mode 100644 index 3373e3f..0000000 --- a/lib/server-api/src/main/java/org/apache/olingo/server/api/processor/ReferenceCollectionProcessor.java +++ /dev/null @@ -1,46 +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.processor; - -import org.apache.olingo.commons.api.format.ContentType; -import org.apache.olingo.server.api.ODataApplicationException; -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; - -/** - * Processor interface for handling a collection an Entity References. - */ -public interface ReferenceCollectionProcessor extends Processor { - - /** - * Reads entity references from persistence and put them as serialized content and with - * according status into the response. - * @param request OData request object containing raw HTTP information - * @param response OData response object for collecting response data - * @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 - */ - void readReferenceCollection(ODataRequest request, ODataResponse response, UriInfo uriInfo, - ContentType responseFormat) - throws ODataApplicationException, SerializerException; -}
