Bug 3866: Support for Restconf HTTP Patch
[netconf.git] / opendaylight / restconf / sal-rest-connector / src / main / java / org / opendaylight / netconf / sal / rest / impl / RestconfCompositeWrapper.java
1 /*
2  * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8
9 package org.opendaylight.netconf.sal.rest.impl;
10
11 import com.google.common.base.Preconditions;
12 import javax.ws.rs.core.Response;
13 import javax.ws.rs.core.UriInfo;
14 import org.opendaylight.netconf.md.sal.rest.schema.SchemaExportContext;
15 import org.opendaylight.netconf.md.sal.rest.schema.SchemaRetrievalService;
16 import org.opendaylight.netconf.sal.rest.api.RestconfService;
17 import org.opendaylight.netconf.sal.restconf.impl.NormalizedNodeContext;
18 import org.opendaylight.netconf.sal.restconf.impl.PATCHContext;
19 import org.opendaylight.netconf.sal.restconf.impl.PATCHStatusContext;
20
21 public class RestconfCompositeWrapper implements RestconfService, SchemaRetrievalService {
22
23     private final RestconfService restconf;
24     private final SchemaRetrievalService schema;
25
26     public RestconfCompositeWrapper(final RestconfService restconf, final SchemaRetrievalService schema) {
27         this.restconf = Preconditions.checkNotNull(restconf);
28         this.schema = Preconditions.checkNotNull(schema);
29     }
30
31     @Override
32     public Object getRoot() {
33         return restconf.getRoot();
34     }
35
36     @Override
37     public NormalizedNodeContext getModules(final UriInfo uriInfo) {
38         return restconf.getModules(uriInfo);
39     }
40
41     @Override
42     public NormalizedNodeContext getModules(final String identifier, final UriInfo uriInfo) {
43         return restconf.getModules(identifier, uriInfo);
44     }
45
46     @Override
47     public NormalizedNodeContext getModule(final String identifier, final UriInfo uriInfo) {
48         return restconf.getModule(identifier, uriInfo);
49     }
50
51     @Override
52     public NormalizedNodeContext getOperations(final UriInfo uriInfo) {
53         return restconf.getOperations(uriInfo);
54     }
55
56     @Override
57     public NormalizedNodeContext getOperations(final String identifier, final UriInfo uriInfo) {
58         return restconf.getOperations(identifier, uriInfo);
59     }
60
61     @Override
62     public NormalizedNodeContext invokeRpc(final String identifier, final NormalizedNodeContext payload, final UriInfo uriInfo) {
63         return restconf.invokeRpc(identifier, payload, uriInfo);
64     }
65
66     @Override
67     @Deprecated
68     public NormalizedNodeContext invokeRpc(final String identifier, final String noPayload, final UriInfo uriInfo) {
69         return restconf.invokeRpc(identifier, noPayload, uriInfo);
70     }
71
72     @Override
73     public NormalizedNodeContext readConfigurationData(final String identifier, final UriInfo uriInfo) {
74         return restconf.readConfigurationData(identifier, uriInfo);
75     }
76
77     @Override
78     public NormalizedNodeContext readOperationalData(final String identifier, final UriInfo uriInfo) {
79         return restconf.readOperationalData(identifier, uriInfo);
80     }
81
82     @Override
83     public Response updateConfigurationData(final String identifier, final NormalizedNodeContext payload) {
84         return restconf.updateConfigurationData(identifier, payload);
85     }
86
87     @Override
88     public Response createConfigurationData(final String identifier, final NormalizedNodeContext payload, final UriInfo uriInfo) {
89         return restconf.createConfigurationData(identifier, payload, uriInfo);
90     }
91
92     @Override
93     public Response createConfigurationData(final NormalizedNodeContext payload, final UriInfo uriInfo) {
94         return restconf.createConfigurationData(payload, uriInfo);
95     }
96
97     @Override
98     public Response deleteConfigurationData(final String identifier) {
99         return restconf.deleteConfigurationData(identifier);
100     }
101
102     @Override
103     public Response subscribeToStream(final String identifier, final UriInfo uriInfo) {
104         return restconf.subscribeToStream(identifier, uriInfo);
105     }
106
107     @Override
108     public NormalizedNodeContext getAvailableStreams(final UriInfo uriInfo) {
109         return restconf.getAvailableStreams(uriInfo);
110     }
111
112     @Override
113     public PATCHStatusContext patchConfigurationData(final String identifier, PATCHContext payload, UriInfo uriInfo) {
114         return restconf.patchConfigurationData(identifier, payload, uriInfo);
115     }
116
117     @Override
118     public PATCHStatusContext patchConfigurationData(final PATCHContext context, final UriInfo uriInfo) {
119         return restconf.patchConfigurationData(context, uriInfo);
120     }
121
122     @Override
123     public SchemaExportContext getSchema(final String mountId) {
124         return schema.getSchema(mountId);
125     }
126 }