diff options
author | afinkbein | 2009-01-14 23:37:44 +0000 |
---|---|---|
committer | afinkbein | 2009-01-14 23:37:44 +0000 |
commit | 698c1dc7260ef5f75c5aa0fb4ec2157b2a566eea (patch) | |
tree | 806a4b119e19ea6b1cb28861c5b9917a098a8250 | |
parent | 2d99254089d3cda0bc83adca18896338583b16fd (diff) | |
download | org.eclipse.osee-698c1dc7260ef5f75c5aa0fb4ec2157b2a566eea.tar.gz org.eclipse.osee-698c1dc7260ef5f75c5aa0fb4ec2157b2a566eea.tar.xz org.eclipse.osee-698c1dc7260ef5f75c5aa0fb4ec2157b2a566eea.zip |
8 files changed, 217 insertions, 0 deletions
diff --git a/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.classpath b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.classpath new file mode 100644 index 00000000000..8a8f1668cdc --- /dev/null +++ b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.project b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.project new file mode 100644 index 00000000000..9fb414c8f4a --- /dev/null +++ b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.osee.framework.server.lookup.servlet</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.settings/org.eclipse.jdt.core.prefs b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000000..065ae5966c9 --- /dev/null +++ b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,7 @@ +#Tue Oct 28 15:41:49 MST 2008
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
+org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.6
diff --git a/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.settings/org.eclipse.pde.core.prefs b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.settings/org.eclipse.pde.core.prefs new file mode 100644 index 00000000000..ae7469542ea --- /dev/null +++ b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,5 @@ +#Tue Oct 28 15:41:49 MST 2008
+eclipse.preferences.version=1
+pluginProject.equinox=false
+pluginProject.extensions=false
+resolve.requirebundle=false
diff --git a/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/META-INF/MANIFEST.MF b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/META-INF/MANIFEST.MF new file mode 100644 index 00000000000..d7d574fa6eb --- /dev/null +++ b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/META-INF/MANIFEST.MF @@ -0,0 +1,17 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Servlet Lookup Servlet Plug-in +Bundle-SymbolicName: org.eclipse.osee.framework.server.lookup.servlet +Bundle-Version: 0.5.0.qualifier +Bundle-Activator: org.eclipse.osee.framework.server.lookup.servlet.ServerLookupActivator +Bundle-Vendor: Boeing +Bundle-RequiredExecutionEnvironment: JavaSE-1.6 +Import-Package: javax.servlet;version="2.4.0", + javax.servlet.http;version="2.4.0", + org.eclipse.osee.framework.core.data, + org.eclipse.osee.framework.core.server, + org.eclipse.osee.framework.db.connection.exception, + org.eclipse.osee.framework.jdk.core.util, + org.eclipse.osee.framework.logging, + org.osgi.framework;version="1.3.0", + org.osgi.util.tracker;version="1.3.3" diff --git a/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/build.properties b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/build.properties new file mode 100644 index 00000000000..41eb6ade2b4 --- /dev/null +++ b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/build.properties @@ -0,0 +1,4 @@ +source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .
diff --git a/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/src/org/eclipse/osee/framework/server/lookup/servlet/ServerLookupActivator.java b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/src/org/eclipse/osee/framework/server/lookup/servlet/ServerLookupActivator.java new file mode 100644 index 00000000000..fcc3726f12b --- /dev/null +++ b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/src/org/eclipse/osee/framework/server/lookup/servlet/ServerLookupActivator.java @@ -0,0 +1,41 @@ +/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.server.lookup.servlet;
+
+import org.eclipse.osee.framework.core.data.OseeServerContext;
+import org.eclipse.osee.framework.core.server.OseeHttpServiceTracker;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class ServerLookupActivator implements BundleActivator {
+
+ private OseeHttpServiceTracker httpTracker;
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ httpTracker =
+ new OseeHttpServiceTracker(context, OseeServerContext.LOOKUP_CONTEXT, ServerLookupServlet.class);
+ httpTracker.open();
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ httpTracker.close();
+ httpTracker = null;
+ }
+
+}
diff --git a/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/src/org/eclipse/osee/framework/server/lookup/servlet/ServerLookupServlet.java b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/src/org/eclipse/osee/framework/server/lookup/servlet/ServerLookupServlet.java new file mode 100644 index 00000000000..0e333c106ce --- /dev/null +++ b/MS_0.6.0_20090114/org.eclipse.osee.framework.server.lookup.servlet/src/org/eclipse/osee/framework/server/lookup/servlet/ServerLookupServlet.java @@ -0,0 +1,108 @@ +/*******************************************************************************
+ * Copyright (c) 2004, 2007 Boeing.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Boeing - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.osee.framework.server.lookup.servlet;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.util.logging.Level;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import org.eclipse.osee.framework.core.data.OseeServerInfo;
+import org.eclipse.osee.framework.core.server.CoreServerActivator;
+import org.eclipse.osee.framework.core.server.OseeHttpServlet;
+import org.eclipse.osee.framework.db.connection.exception.OseeCoreException;
+import org.eclipse.osee.framework.jdk.core.util.Lib;
+import org.eclipse.osee.framework.jdk.core.util.Strings;
+import org.eclipse.osee.framework.logging.OseeLog;
+
+/**
+ * @author Roberto E. Escobar
+ */
+public class ServerLookupServlet extends OseeHttpServlet {
+
+ private static final long serialVersionUID = -7055381632202456561L;
+
+ /* (non-Javadoc)
+ * @see org.eclipse.osee.framework.core.server.OseeHttpServlet#checkAccessControl(javax.servlet.http.HttpServletRequest)
+ */
+ @Override
+ protected void checkAccessControl(HttpServletRequest request) throws OseeCoreException {
+ // Allow access to all
+ }
+
+ /* (non-Javadoc)
+ * @see javax.servlet.http.HttpServlet#doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
+ */
+ @Override
+ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ try {
+ String version = request.getParameter("version");
+ boolean wasBadRequest = false;
+
+ OseeServerInfo info = null;
+ if (Strings.isValid(version)) {
+ version = version.trim();
+ info = CoreServerActivator.getApplicationServerLookup().getServerInfoBy(version);
+ } else {
+ wasBadRequest = true;
+ }
+
+ if (info == null) {
+ response.setStatus(wasBadRequest ? HttpServletResponse.SC_BAD_REQUEST : HttpServletResponse.SC_NO_CONTENT);
+ response.setContentType("txt/plain");
+ response.getWriter().write(
+ String.format("Unable to locate application server matching - [%s]", request.toString()));
+ response.getWriter().flush();
+ response.getWriter().close();
+ } else {
+ ByteArrayOutputStream stream = new ByteArrayOutputStream();
+ info.write(stream);
+ response.setStatus(HttpServletResponse.SC_OK);
+ response.setContentType("application/xml");
+ response.setCharacterEncoding("UTF-8");
+ response.setContentLength(stream.size());
+ Lib.inputStreamToOutputStream(new ByteArrayInputStream(stream.toByteArray()), response.getOutputStream());
+ response.getOutputStream().flush();
+ }
+ } catch (Exception ex) {
+ OseeLog.log(ServerLookupActivator.class, Level.SEVERE, String.format(
+ "Failed to process application server lookup request [%s]", request.toString()), ex);
+ response.getWriter().write(Lib.exceptionToString(ex));
+ response.getWriter().flush();
+ response.getWriter().close();
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see javax.servlet.http.HttpServlet#doPost(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
+ */
+ @Override
+ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+ try {
+ boolean isRegistrationToLookupTableRequested = Boolean.valueOf(request.getParameter("registerToLookup"));
+ if (isRegistrationToLookupTableRequested) {
+ boolean wasSuccessful = CoreServerActivator.getApplicationServerManager().executeLookupRegistration();
+ response.setStatus(wasSuccessful ? HttpServletResponse.SC_ACCEPTED : HttpServletResponse.SC_CONFLICT);
+ response.setContentType("txt/plain");
+ response.getWriter().write(
+ String.format("Registration into server lookup was a [%s]", wasSuccessful ? "success" : "failure"));
+ }
+ } catch (Exception ex) {
+ OseeLog.log(ServerLookupActivator.class, Level.SEVERE, String.format(
+ "Failed to process application server lookup request [%s]", request.toString()), ex);
+ response.getWriter().write(Lib.exceptionToString(ex));
+ }
+ response.getWriter().flush();
+ response.getWriter().close();
+ }
+}
|