svn commit: r883056 - in /ofbiz/trunk/framework: service/src/org/ofbiz/service/ModelServiceReader.java service/src/org/ofbiz/service/ServiceDispatcher.java widget/src/org/ofbiz/widget/form/ModelForm.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r883056 - in /ofbiz/trunk/framework: service/src/org/ofbiz/service/ModelServiceReader.java service/src/org/ofbiz/service/ServiceDispatcher.java widget/src/org/ofbiz/widget/form/ModelForm.java

jacopoc
Author: jacopoc
Date: Sun Nov 22 10:23:09 2009
New Revision: 883056

URL: http://svn.apache.org/viewvc?rev=883056&view=rev
Log:
New improved version of an enhancement to the service framework after I reverted my first one because it was causing some issues with service validations.
Added two new IN parameter, internally (and automatically) set for service definitions:
login.username
login.password
They are already used by the authorization service ("userLogin") to authorize the user to the service call and to retrieve the userLogin object (if the user is authorized).
They can be passed to the service in the input context in place of the userLogin object: this is useful when the service is invoked from a remote system (thru SOAP etc...).


Modified:
    ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java
    ofbiz/trunk/framework/service/src/org/ofbiz/service/ServiceDispatcher.java
    ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java

Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java?rev=883056&r1=883055&r2=883056&view=diff
==============================================================================
--- ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java (original)
+++ ofbiz/trunk/framework/service/src/org/ofbiz/service/ModelServiceReader.java Sun Nov 22 10:23:09 2009
@@ -642,6 +642,22 @@
         def.optional = true;
         def.internal = true;
         service.addParam(def);
+        // login.username
+        def = new ModelParam();
+        def.name = "login.username";
+        def.type = "String";
+        def.mode = "IN";
+        def.optional = true;
+        def.internal = true;
+        service.addParam(def);
+        // login.password
+        def = new ModelParam();
+        def.name = "login.password";
+        def.type = "String";
+        def.mode = "IN";
+        def.optional = true;
+        def.internal = true;
+        service.addParam(def);
         // Locale
         def = new ModelParam();
         def.name = "locale";

Modified: ofbiz/trunk/framework/service/src/org/ofbiz/service/ServiceDispatcher.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/service/src/org/ofbiz/service/ServiceDispatcher.java?rev=883056&r1=883055&r2=883056&view=diff
==============================================================================
--- ofbiz/trunk/framework/service/src/org/ofbiz/service/ServiceDispatcher.java (original)
+++ ofbiz/trunk/framework/service/src/org/ofbiz/service/ServiceDispatcher.java Sun Nov 22 10:23:09 2009
@@ -863,11 +863,11 @@
             return context;
         }
 
-        if (context.containsKey("login.username")) {
+        if (UtilValidate.isNotEmpty(context.get("login.username"))) {
             // check for a username/password, if there log the user in and make the userLogin object
             String username = (String) context.get("login.username");
 
-            if (context.containsKey("login.password")) {
+            if (UtilValidate.isNotEmpty(context.get("login.password"))) {
                 String password = (String) context.get("login.password");
 
                 context.put("userLogin", getLoginObject(service, localName, username, password, (Locale) context.get("locale")));

Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java?rev=883056&r1=883055&r2=883056&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/form/ModelForm.java Sun Nov 22 10:23:09 2009
@@ -679,7 +679,7 @@
 
         for (ModelParam modelParam: modelService.getInModelParamList()) {
             // skip auto params that the service engine populates...
-            if ("userLogin".equals(modelParam.name) || "locale".equals(modelParam.name) || "timeZone".equals(modelParam.name)) {
+            if ("userLogin".equals(modelParam.name) || "locale".equals(modelParam.name) || "timeZone".equals(modelParam.name) || "login.username".equals(modelParam.name) || "login.password".equals(modelParam.name)) {
                 continue;
             }
             if (modelParam.formDisplay) {