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.