X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=restconf%2Fsal-rest-connector%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Frestconf%2Frestful%2Fservices%2Fapi%2FRestconfDataService.java;h=6b5876cb58ee8f7a4381a50e6bf73051513370cb;hb=17f4fc5e182e583114bb48bbcd693f69a6852e59;hp=df0ac51928b00ab6de06a621ad2db57efc3e2285;hpb=77dc9aa12435d7ae771ca0837a2bd620676834d5;p=netconf.git diff --git a/restconf/sal-rest-connector/src/main/java/org/opendaylight/restconf/restful/services/api/RestconfDataService.java b/restconf/sal-rest-connector/src/main/java/org/opendaylight/restconf/restful/services/api/RestconfDataService.java index df0ac51928..6b5876cb58 100644 --- a/restconf/sal-rest-connector/src/main/java/org/opendaylight/restconf/restful/services/api/RestconfDataService.java +++ b/restconf/sal-rest-connector/src/main/java/org/opendaylight/restconf/restful/services/api/RestconfDataService.java @@ -24,7 +24,7 @@ import org.opendaylight.netconf.sal.rest.impl.PATCH; import org.opendaylight.netconf.sal.restconf.impl.NormalizedNodeContext; import org.opendaylight.netconf.sal.restconf.impl.PATCHContext; import org.opendaylight.netconf.sal.restconf.impl.PATCHStatusContext; -import org.opendaylight.restconf.Draft16; +import org.opendaylight.restconf.Draft18; import org.opendaylight.restconf.utils.RestconfConstants; /** @@ -45,10 +45,22 @@ public interface RestconfDataService { */ @GET @Path("/data/{identifier:.+}") - @Produces({ Draft16.MediaTypes.DATA + RestconfConstants.JSON, Draft16.MediaTypes.DATA, MediaType.APPLICATION_JSON, + @Produces({ Draft18.MediaTypes.DATA + RestconfConstants.JSON, Draft18.MediaTypes.DATA, MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_XML }) - Response readData(@Encoded @PathParam("identifier") String identifier, - @Context UriInfo uriInfo); + Response readData(@Encoded @PathParam("identifier") String identifier, @Context UriInfo uriInfo); + + /** + * Get target data resource from data root. + * + * @param uriInfo + * - URI info + * @return {@link NormalizedNodeContext} + */ + @GET + @Path("/data") + @Produces({ Draft18.MediaTypes.DATA + RestconfConstants.JSON, Draft18.MediaTypes.DATA, MediaType.APPLICATION_JSON, + MediaType.APPLICATION_XML, MediaType.TEXT_XML }) + Response readData(@Context UriInfo uriInfo); /** * Create or replace the target data resource. @@ -61,9 +73,10 @@ public interface RestconfDataService { */ @PUT @Path("/data/{identifier:.+}") - @Consumes({ Draft16.MediaTypes.DATA + RestconfConstants.JSON, Draft16.MediaTypes.DATA, MediaType.APPLICATION_JSON, + @Consumes({ Draft18.MediaTypes.DATA + RestconfConstants.JSON, Draft18.MediaTypes.DATA, MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_XML }) - Response putData(@Encoded @PathParam("identifier") String identifier, NormalizedNodeContext payload); + Response putData(@Encoded @PathParam("identifier") String identifier, NormalizedNodeContext payload, + @Context UriInfo uriInfo); /** * Create a data resource in target. @@ -78,7 +91,7 @@ public interface RestconfDataService { */ @POST @Path("/data/{identifier:.+}") - @Consumes({ Draft16.MediaTypes.DATA + RestconfConstants.JSON, Draft16.MediaTypes.DATA, MediaType.APPLICATION_JSON, + @Consumes({ Draft18.MediaTypes.DATA + RestconfConstants.JSON, Draft18.MediaTypes.DATA, MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_XML }) Response postData(@Encoded @PathParam("identifier") String identifier, NormalizedNodeContext payload, @Context UriInfo uriInfo); @@ -94,7 +107,7 @@ public interface RestconfDataService { */ @POST @Path("/data") - @Consumes({ Draft16.MediaTypes.DATA + RestconfConstants.JSON, Draft16.MediaTypes.DATA, MediaType.APPLICATION_JSON, + @Consumes({ Draft18.MediaTypes.DATA + RestconfConstants.JSON, Draft18.MediaTypes.DATA, MediaType.APPLICATION_JSON, MediaType.APPLICATION_XML, MediaType.TEXT_XML }) Response postData(NormalizedNodeContext payload, @Context UriInfo uriInfo); @@ -123,9 +136,9 @@ public interface RestconfDataService { */ @PATCH @Path("/data/{identifier:.+}") - @Consumes({ Draft16.MediaTypes.PATCH + RestconfConstants.JSON, Draft16.MediaTypes.PATCH + RestconfConstants.XML }) - @Produces({ Draft16.MediaTypes.PATCH_STATUS + RestconfConstants.JSON, - Draft16.MediaTypes.PATCH_STATUS + RestconfConstants.XML }) + @Consumes({ Draft18.MediaTypes.PATCH + RestconfConstants.JSON, Draft18.MediaTypes.PATCH + RestconfConstants.XML }) + @Produces({ Draft18.MediaTypes.PATCH_STATUS + RestconfConstants.JSON, + Draft18.MediaTypes.PATCH_STATUS + RestconfConstants.XML }) PATCHStatusContext patchData(@Encoded @PathParam("identifier") String identifier, PATCHContext context, @Context UriInfo uriInfo); @@ -140,8 +153,8 @@ public interface RestconfDataService { */ @PATCH @Path("/data") - @Consumes({ Draft16.MediaTypes.PATCH + RestconfConstants.JSON, Draft16.MediaTypes.PATCH + RestconfConstants.XML }) - @Produces({ Draft16.MediaTypes.PATCH_STATUS + RestconfConstants.JSON, - Draft16.MediaTypes.PATCH_STATUS + RestconfConstants.XML }) + @Consumes({ Draft18.MediaTypes.PATCH + RestconfConstants.JSON, Draft18.MediaTypes.PATCH + RestconfConstants.XML }) + @Produces({ Draft18.MediaTypes.PATCH_STATUS + RestconfConstants.JSON, + Draft18.MediaTypes.PATCH_STATUS + RestconfConstants.XML }) PATCHStatusContext patchData(PATCHContext context, @Context UriInfo uriInfo); }