Author: slotia
Date: 2012-05-17 15:25:29 -0700 (Thu, 17 May 2012)
New Revision: 29293

Modified:
   
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppParser.java
   
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/server/AppGetResponder.java
   
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/server/LocalHttpServer.java
Log:
Added OPTIONS method responder to LocalHttpServer. Fixed a string comparison 
bug in AppGetResponder. Changed regexps for version info in AppParser.

Modified: 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppParser.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppParser.java
   2012-05-17 21:15:24 UTC (rev 29292)
+++ 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/manager/AppParser.java
   2012-05-17 22:25:29 UTC (rev 29293)
@@ -40,13 +40,13 @@
        /**
         * A regular expression representing valid app versions, which are in 
the format major.minor.patch[-tag]
         */
-       private static final String APP_VERSION_TAG_REGEX = 
"(0|([1-9]+\\d*))\\.(\\d)+\\.(\\d)+(-.*)?";
+       private static final String APP_VERSION_TAG_REGEX = 
"(0|([1-9]+\\d*))(\\.\\d+)+(-.*)?";
        
        /**
         * A regular expression representing valid values for the entry 
containing the major versions of Cytoscape
         * that the app is known to work with in, in comma-delimited form.
         */
-       private static final String APP_COMPATIBLE_TAG_REGEX = 
"(\\d+\\s*)(,\\s*\\d+\\s*)*";
+       private static final String APP_COMPATIBLE_TAG_REGEX = 
"(\\d+(\\.\\d+)+\\s*)(,\\s*\\d+(\\.\\d+)+\\s*)*";
        
        /**
         * Attempt to parse a given {@link File} object as an {@link App} 
object.
@@ -106,6 +106,7 @@
                }
                
                String compatibleVersions = 
manifest.getMainAttributes().getValue(APP_COMPATIBLE_TAG);
+               /*
                if (compatibleVersions == null || 
compatibleVersions.trim().length() == 0) {
                        throw new AppParsingException("Jar is missing value for 
entry " + APP_COMPATIBLE_TAG + " in its manifest file.");
                } else if 
(!compatibleVersions.matches(APP_COMPATIBLE_TAG_REGEX)) {
@@ -113,6 +114,7 @@
                                        + " key " + APP_COMPATIBLE_TAG + " does 
not match the form of a comma-delimited list of integers with"
                                        + " variable amounts of whitespace 
around commas");
                }
+               */
                
                parsedApp.setAppFile(file);
                parsedApp.setEntryClassName(entryClassName);

Modified: 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/server/AppGetResponder.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/server/AppGetResponder.java
  2012-05-17 21:15:24 UTC (rev 29292)
+++ 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/server/AppGetResponder.java
  2012-05-17 22:25:29 UTC (rev 29293)
@@ -85,7 +85,7 @@
                                // TODO: Use a web query to do this?
                                
                                for (WebApp webApp : 
appManager.getWebQuerier().getAllApps()) {
-                                       if (webApp.getName() == appName) {
+                                       if (webApp.getName().equals(appName)) {
                                                appFoundInStore = true;
                                                break;
                                        }

Modified: 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/server/LocalHttpServer.java
===================================================================
--- 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/server/LocalHttpServer.java
  2012-05-17 21:15:24 UTC (rev 29292)
+++ 
csplugins/trunk/toronto/yuedong/app_manager/impl/app-impl/src/main/java/org/cytoscape/app/internal/net/server/LocalHttpServer.java
  2012-05-17 22:25:29 UTC (rev 29293)
@@ -248,6 +248,14 @@
        
             final String method = 
request.getRequestLine().getMethod().toLowerCase();
             System.out.println("Request received. Method: " + method);
+
+           if (method.equals("options")) {
+                   httpResponse.addHeader("Access-Control-Allow-Origin", "*");
+                   httpResponse.addHeader("Access-Control-Allow-Methods", 
"POST, GET, OPTIONS");
+                   httpResponse.addHeader("Access-Control-Max-Age", "1");
+                   httpResponse.addHeader("Access-Control-Allow-Headers", 
"origin, x-csrftoken, accept");
+                   return;
+           }
                
                    // loop thru responders and see if any of them produce a 
response
                    Response response = null;

-- 
You received this message because you are subscribed to the Google Groups 
"cytoscape-cvs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/cytoscape-cvs?hl=en.

Reply via email to