From ca253ade84ce0e49695fbdc998675740746fb3e1 Mon Sep 17 00:00:00 2001
From: Tor-Einar Skog <tor-einar.skog@bioforsk.no>
Date: Fri, 6 Dec 2013 17:00:53 +0100
Subject: [PATCH] Added methods getLicense and GetCopyright to model factory
 and REST service

---
 .../vips/core/VIPSCoreApplication.java        |  1 -
 .../vips/core/service/ModelResourceImpl.java  | 20 +++++++------
 .../vips/model/factory/ModelFactory.java      | 28 +++++++++++++++++++
 3 files changed, 40 insertions(+), 9 deletions(-)

diff --git a/src/main/java/no/bioforsk/vips/core/VIPSCoreApplication.java b/src/main/java/no/bioforsk/vips/core/VIPSCoreApplication.java
index a6c8938..8545d71 100644
--- a/src/main/java/no/bioforsk/vips/core/VIPSCoreApplication.java
+++ b/src/main/java/no/bioforsk/vips/core/VIPSCoreApplication.java
@@ -37,7 +37,6 @@ public class VIPSCoreApplication extends Application
      */
     private void addRestResourceClasses(Set<Class<?>> resources) {
         resources.add(no.bioforsk.vips.core.config.JacksonConfig.class);
-        resources.add(no.bioforsk.vips.core.service.ModelResource.class);
         resources.add(no.bioforsk.vips.coremanager.service.ManagerResource.class);
     }
 }
\ No newline at end of file
diff --git a/src/main/java/no/bioforsk/vips/core/service/ModelResourceImpl.java b/src/main/java/no/bioforsk/vips/core/service/ModelResourceImpl.java
index 52aa005..c0ba930 100644
--- a/src/main/java/no/bioforsk/vips/core/service/ModelResourceImpl.java
+++ b/src/main/java/no/bioforsk/vips/core/service/ModelResourceImpl.java
@@ -187,10 +187,6 @@ public class ModelResourceImpl implements ModelResource{
      * @param config input data for the model
      * @return list of result objects
      */
-    //@POST
-    //@Path("models/run")
-    //@Consumes("application/json")
-    //@Produces("application/json")
     @Override
     public Response runModel(ModelConfiguration config)
     {
@@ -213,10 +209,6 @@ public class ModelResourceImpl implements ModelResource{
      * @param config input data for the model
      * @return list of result objects
      */
-    //@POST
-    //@Path("models/{modelId}/run")
-    //@Consumes("application/json")
-    //@Produces("application/json")
     @Override
     public Response runModel(@PathParam("modelId") String modelId, ModelConfiguration config)
     {
@@ -252,5 +244,17 @@ public class ModelResourceImpl implements ModelResource{
         return Response.ok().entity(name).build();
     }
 
+    @Override
+    public Response printModelLicense(String modelId) {
+        String license = ModelFactory.getInstance().getModelLicense(modelId);
+        return Response.ok().entity(license).build();
+    }
+    
+    @Override
+    public Response printModelCopyright(String modelId) {
+        String copyright = ModelFactory.getInstance().getModelCopyright(modelId);
+        return Response.ok().entity(copyright).build();
+    }
+
     
 }
diff --git a/src/main/java/no/bioforsk/vips/model/factory/ModelFactory.java b/src/main/java/no/bioforsk/vips/model/factory/ModelFactory.java
index 1a5c117..7e0718e 100644
--- a/src/main/java/no/bioforsk/vips/model/factory/ModelFactory.java
+++ b/src/main/java/no/bioforsk/vips/model/factory/ModelFactory.java
@@ -181,6 +181,34 @@ public class ModelFactory {
         return language != null ? this.models.get(modelId).getModelName(language) : this.models.get(modelId).getModelName();
     }
     
+    /**
+     * 
+     * @param modelId
+     * @return The license for the requested model
+     */
+    public String getModelLicense(String modelId)
+    {
+        if(this.isDuplicateModelId(modelId))
+        {
+            return this.getDuplicateModelIdWarning();
+        }
+        return this.models.get(modelId).getLicense();
+    }
+    
+    /**
+     * 
+     * @param modelId
+     * @return the copyright information for the requested model
+     */
+    public String getModelCopyright(String modelId)
+    {
+        if(this.isDuplicateModelId(modelId))
+        {
+            return this.getDuplicateModelIdWarning();
+        }
+        return this.models.get(modelId).getCopyright();
+    }
+    
     /**
      * 
      * @param modelId ID of the requested model
-- 
GitLab