Repository: falcon
Updated Branches:
  refs/heads/master 3f1e04792 -> bc4dcf9cf


FALCON-2230 Extension API failure bug fixes

Author: Pracheer Agarwal <[email protected]>

Reviewers: @sandeepSamudrala, @pallavi-rao

Closes #332 from PracheerAgarwal/APIResult


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

Branch: refs/heads/master
Commit: bc4dcf9cf6965467221faae3d4e963e3bfc83910
Parents: 3f1e047
Author: Pracheer Agarwal <[email protected]>
Authored: Thu Dec 29 10:44:47 2016 +0530
Committer: Pallavi Rao <[email protected]>
Committed: Thu Dec 29 10:44:47 2016 +0530

----------------------------------------------------------------------
 .../main/java/org/apache/falcon/client/FalconClient.java  |  9 +++++----
 .../falcon/resource/proxy/ExtensionManagerProxy.java      | 10 ++++------
 2 files changed, 9 insertions(+), 10 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/falcon/blob/bc4dcf9c/client/src/main/java/org/apache/falcon/client/FalconClient.java
----------------------------------------------------------------------
diff --git a/client/src/main/java/org/apache/falcon/client/FalconClient.java 
b/client/src/main/java/org/apache/falcon/client/FalconClient.java
index fbb4db3..e03e82d 100644
--- a/client/src/main/java/org/apache/falcon/client/FalconClient.java
+++ b/client/src/main/java/org/apache/falcon/client/FalconClient.java
@@ -340,7 +340,7 @@ public class FalconClient extends AbstractFalconClient {
      */
     protected static enum ExtensionOperations {
 
-        ENUMERATE("api/extension/enumerate/", HttpMethod.GET, 
MediaType.APPLICATION_JSON),
+        ENUMERATE("api/extension/enumerate/", HttpMethod.GET, 
MediaType.TEXT_XML),
         DESCRIBE("api/extension/describe/", HttpMethod.GET, 
MediaType.TEXT_PLAIN),
         DEFINITION("api/extension/definition", HttpMethod.GET, 
MediaType.APPLICATION_JSON),
         LIST("api/extension/list", HttpMethod.GET, MediaType.APPLICATION_JSON),
@@ -353,10 +353,10 @@ public class FalconClient extends AbstractFalconClient {
         SUSPEND("api/extension/suspend", HttpMethod.POST, MediaType.TEXT_XML),
         RESUME("api/extension/resume", HttpMethod.POST, MediaType.TEXT_XML),
         DELETE("api/extension/delete", HttpMethod.POST, MediaType.TEXT_XML),
-        UNREGISTER("api/extension/unregister/", HttpMethod.POST, 
MediaType.TEXT_PLAIN),
+        UNREGISTER("api/extension/unregister/", HttpMethod.POST, 
MediaType.TEXT_XML),
         DETAIL("api/extension/detail/", HttpMethod.GET, 
MediaType.APPLICATION_JSON),
         JOB_DETAILS("api/extension/extensionJobDetails/", HttpMethod.GET, 
MediaType.APPLICATION_JSON),
-        REGISTER("api/extension/register/", HttpMethod.POST, 
MediaType.TEXT_PLAIN);
+        REGISTER("api/extension/register/", HttpMethod.POST, 
MediaType.TEXT_XML);
 
         private String path;
         private String method;
@@ -1106,9 +1106,10 @@ public class FalconClient extends AbstractFalconClient {
 
     private JSONObject getExtensionDetailJson(String extensionName) {
         ClientResponse clientResponse = 
getExtensionDetailResponse(extensionName);
+
         JSONObject extensionDetailJson;
         try {
-            extensionDetailJson = new 
JSONObject(clientResponse.getEntity(String.class));
+            extensionDetailJson = new JSONObject(getResponse(APIResult.class, 
clientResponse).getMessage());
         } catch (JSONException e) {
             throw new FalconCLIException("Failed to get details for the given 
extension", e);
         }

http://git-wip-us.apache.org/repos/asf/falcon/blob/bc4dcf9c/prism/src/main/java/org/apache/falcon/resource/proxy/ExtensionManagerProxy.java
----------------------------------------------------------------------
diff --git 
a/prism/src/main/java/org/apache/falcon/resource/proxy/ExtensionManagerProxy.java
 
b/prism/src/main/java/org/apache/falcon/resource/proxy/ExtensionManagerProxy.java
index ebe989d..343ef6c 100644
--- 
a/prism/src/main/java/org/apache/falcon/resource/proxy/ExtensionManagerProxy.java
+++ 
b/prism/src/main/java/org/apache/falcon/resource/proxy/ExtensionManagerProxy.java
@@ -356,7 +356,6 @@ public class ExtensionManagerProxy extends 
AbstractExtensionManager {
         }
     }
 
-
     private ExtensionType getExtensionType(String extensionName) {
         ExtensionMetaStore metaStore = ExtensionStore.getMetaStore();
         ExtensionBean extensionDetails = metaStore.getDetail(extensionName);
@@ -581,11 +580,11 @@ public class ExtensionManagerProxy extends 
AbstractExtensionManager {
     // Extension store related REST API's
     @GET
     @Path("enumerate")
-    @Produces({MediaType.APPLICATION_JSON})
+    @Produces({MediaType.TEXT_PLAIN, MediaType.TEXT_XML})
     public APIResult getExtensions() {
         checkIfExtensionServiceIsEnabled();
         try {
-            return new APIResult(APIResult.Status.SUCCEEDED, 
super.getExtensions().toString());
+            return super.getExtensions();
         } catch (FalconWebException e) {
             throw FalconWebException.newAPIException(e, 
Response.Status.INTERNAL_SERVER_ERROR);
         }
@@ -633,7 +632,7 @@ public class ExtensionManagerProxy extends 
AbstractExtensionManager {
     @POST
     @Path("unregister/{extension-name}")
     @Consumes({MediaType.TEXT_XML, MediaType.TEXT_PLAIN})
-    @Produces(MediaType.TEXT_PLAIN)
+    @Produces({MediaType.TEXT_PLAIN, MediaType.TEXT_XML})
     public APIResult deleteExtensionMetadata(
             @PathParam("extension-name") String extensionName){
         checkIfExtensionServiceIsEnabled();
@@ -647,7 +646,7 @@ public class ExtensionManagerProxy extends 
AbstractExtensionManager {
     @POST
     @Path("register/{extension-name}")
     @Consumes({MediaType.TEXT_XML, MediaType.TEXT_PLAIN})
-    @Produces(MediaType.TEXT_PLAIN)
+    @Produces({MediaType.TEXT_PLAIN, MediaType.TEXT_XML})
     public APIResult registerExtensionMetadata(
             @PathParam("extension-name") String extensionName,
             @QueryParam("path") String path,
@@ -684,7 +683,6 @@ public class ExtensionManagerProxy extends 
AbstractExtensionManager {
         // add tags on extension name and job
         String jobName = 
properties.getProperty(ExtensionProperties.JOB_NAME.getName());
         EntityUtil.applyTags(extensionName, jobName, entities);
-
         return entities;
     }
 

Reply via email to