[jbosstools-commits] JBoss Tools SVN: r23717 - in trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core: .settings and 8 other directories.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Fri Jul 23 18:09:12 EDT 2010
Author: jjohnstn
Date: 2010-07-23 18:09:11 -0400 (Fri, 23 Jul 2010)
New Revision: 23717
Added:
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.classpath
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.project
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/org.eclipse.jdt.core.prefs
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/org.eclipse.pde.core.prefs
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/ChangeLog
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/META-INF/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/META-INF/MANIFEST.MF
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/build.properties
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/apache-mime4j-0.6.jar
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/commons-codec-1.3.jar
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/commons-logging-1.1.1.jar
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/deltacloudclient-1.0.jar
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpclient-4.0.1.jar
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpcore-4.0.1.jar
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpcore-nio-4.0.1.jar
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpmime-4.0.1.jar
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/Activator.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloud.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudImage.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudInstance.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/ICloudManagerListener.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/IImageListListener.java
trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/IInstanceListListener.java
Log:
2010-07-23 Jeff Johnston <jjohnstn at redhat.com>
* .classpath: New file.
* .project: New file.
* .settings/org.eclipse.jdt.core.prefs: New file.
* .settings/org.eclipse.pde.core.prefs: New file.
* build.properties: New file.
* lib/apache-mime4j-0.6.jar: New file.
* lib/commons-codec-1.3.jar: New file.
* lib/commons-logging-1.1.1.jar: New file.
* lib/deltacloudclient-1.0.jar: New file.
* lib/httpclient-4.0.1.jar: New file.
* lib/httpcore-4.0.1.jar: New file.
* lib/httpcore-nio-4.0.1.jar: New file.
* lib/httpmime-4.0.1.jar: New file.
* META-INF/MANIFEST.MF: New file.
* src/org/jboss/tools/deltacloud/core/Activator.java: New file.
* src/org/jboss/tools/deltacloud/core/DeltaCloud.java: New file.
* src/org/jboss/tools/deltacloud/core/DeltaCloudImage.java: New file.
* src/org/jboss/tools/deltacloud/core/DeltaCloudInstance.java: New file.
* src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java: New file.
* src/org/jboss/tools/deltacloud/core/ICloudManagerListener.java: New file.
* src/org/jboss/tools/deltacloud/core/IImageListListener.java: New file.
* src/org/jboss/tools/deltacloud/core/IInstanceListListener.java: New file.
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.classpath
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.classpath (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.classpath 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,15 @@
+<?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 exported="true" kind="lib" path="lib/deltacloudclient-1.0.jar" sourcepath="/home/cygnus/jjohnstn/deltacloud-tools/DeltaCloudClient/src"/>
+ <classpathentry exported="true" kind="lib" path="lib/httpclient-4.0.1.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/httpcore-4.0.1.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/httpcore-nio-4.0.1.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/httpmime-4.0.1.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/apache-mime4j-0.6.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/commons-codec-1.3.jar"/>
+ <classpathentry exported="true" kind="lib" path="lib/commons-logging-1.1.1.jar"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.project
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.project (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.project 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.jboss.tools.deltacloud.core</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>
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/org.eclipse.jdt.core.prefs
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/org.eclipse.jdt.core.prefs (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/org.eclipse.jdt.core.prefs 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,8 @@
+#Tue Jul 20 14:47:06 EDT 2010
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+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
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/org.eclipse.pde.core.prefs
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/org.eclipse.pde.core.prefs (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/.settings/org.eclipse.pde.core.prefs 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,3 @@
+#Tue Jul 20 14:58:56 EDT 2010
+eclipse.preferences.version=1
+resolve.requirebundle=false
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/ChangeLog
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/ChangeLog (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/ChangeLog 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,24 @@
+2010-07-23 Jeff Johnston <jjohnstn at redhat.com>
+
+ * .classpath: New file.
+ * .project: New file.
+ * .settings/org.eclipse.jdt.core.prefs: New file.
+ * .settings/org.eclipse.pde.core.prefs: New file.
+ * build.properties: New file.
+ * lib/apache-mime4j-0.6.jar: New file.
+ * lib/commons-codec-1.3.jar: New file.
+ * lib/commons-logging-1.1.1.jar: New file.
+ * lib/deltacloudclient-1.0.jar: New file.
+ * lib/httpclient-4.0.1.jar: New file.
+ * lib/httpcore-4.0.1.jar: New file.
+ * lib/httpcore-nio-4.0.1.jar: New file.
+ * lib/httpmime-4.0.1.jar: New file.
+ * META-INF/MANIFEST.MF: New file.
+ * src/org/jboss/tools/deltacloud/core/Activator.java: New file.
+ * src/org/jboss/tools/deltacloud/core/DeltaCloud.java: New file.
+ * src/org/jboss/tools/deltacloud/core/DeltaCloudImage.java: New file.
+ * src/org/jboss/tools/deltacloud/core/DeltaCloudInstance.java: New file.
+ * src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java: New file.
+ * src/org/jboss/tools/deltacloud/core/ICloudManagerListener.java: New file.
+ * src/org/jboss/tools/deltacloud/core/IImageListListener.java: New file.
+ * src/org/jboss/tools/deltacloud/core/IInstanceListListener.java: New file.
\ No newline at end of file
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/META-INF/MANIFEST.MF
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/META-INF/MANIFEST.MF (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/META-INF/MANIFEST.MF 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,21 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: DeltaCloud Core
+Bundle-SymbolicName: org.jboss.tools.deltacloud.core
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.jboss.tools.deltacloud.core.Activator
+Bundle-Vendor: Red Hat Inc.
+Require-Bundle: org.eclipse.core.runtime,
+ org.apache.log4j;bundle-version="1.2.13"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-ActivationPolicy: lazy
+Export-Package: org.jboss.tools.deltacloud.core;x-friends:="org.jboss.tools.deltacloud.ui"
+Bundle-ClassPath: .,
+ lib/deltacloudclient-1.0.jar,
+ lib/apache-mime4j-0.6.jar,
+ lib/commons-codec-1.3.jar,
+ lib/commons-logging-1.1.1.jar,
+ lib/httpclient-4.0.1.jar,
+ lib/httpcore-4.0.1.jar,
+ lib/httpcore-nio-4.0.1.jar,
+ lib/httpmime-4.0.1.jar
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/build.properties
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/build.properties (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/build.properties 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,14 @@
+source.. = src/,\
+ lib/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ .classpath,\
+ lib/deltacloudclient-1.0.jar,\
+ lib/apache-mime4j-0.6.jar,\
+ lib/commons-codec-1.3.jar,\
+ lib/commons-logging-1.1.1.jar,\
+ lib/httpclient-4.0.1.jar,\
+ lib/httpcore-4.0.1.jar,\
+ lib/httpcore-nio-4.0.1.jar,\
+ lib/httpmime-4.0.1.jar
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/apache-mime4j-0.6.jar
===================================================================
(Binary files differ)
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/apache-mime4j-0.6.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/commons-codec-1.3.jar
===================================================================
(Binary files differ)
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/commons-codec-1.3.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/commons-logging-1.1.1.jar
===================================================================
(Binary files differ)
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/commons-logging-1.1.1.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/deltacloudclient-1.0.jar
===================================================================
(Binary files differ)
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/deltacloudclient-1.0.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpclient-4.0.1.jar
===================================================================
(Binary files differ)
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpclient-4.0.1.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpcore-4.0.1.jar
===================================================================
(Binary files differ)
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpcore-4.0.1.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpcore-nio-4.0.1.jar
===================================================================
(Binary files differ)
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpcore-nio-4.0.1.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpmime-4.0.1.jar
===================================================================
(Binary files differ)
Property changes on: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/lib/httpmime-4.0.1.jar
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/Activator.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/Activator.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/Activator.java 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,50 @@
+package org.jboss.tools.deltacloud.core;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends Plugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.jboss.tools.deltacloud.core";
+
+ // The shared instance
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.core.runtime.Plugins#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.core.runtime.Plugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloud.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloud.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloud.java 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,106 @@
+package org.jboss.tools.deltacloud.core;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.core.runtime.ListenerList;
+import org.jboss.deltacloud.client.DeltaCloudClient;
+import org.jboss.deltacloud.client.DeltaCloudClientException;
+import org.jboss.deltacloud.client.Image;
+import org.jboss.deltacloud.client.Instance;
+
+public class DeltaCloud {
+
+ private String name;
+ private String username;
+ private URL url;
+ private DeltaCloudClient client;
+
+
+ ListenerList instanceListeners = new ListenerList();
+ ListenerList imageListeners = new ListenerList();
+
+ public DeltaCloud(String name, URL url, String username, String passwd) throws MalformedURLException {
+ this.client = new DeltaCloudClient(url, username, passwd);
+ this.url = url;
+ this.name = name;
+ this.username = username;
+ }
+
+ public String getName() {
+ return name;
+ }
+
+ public String getURL() {
+ return url.toString();
+ }
+
+ public String getUsername() {
+ return username;
+ }
+
+ public void addInstanceListListener(IInstanceListListener listener) {
+ instanceListeners.add(listener);
+ }
+
+ public void removeInstanceListListener(IInstanceListListener listener) {
+ instanceListeners.remove(listener);
+ }
+
+ public void notifyInstanceListListeners(DeltaCloudInstance[] array) {
+ Object[] listeners = instanceListeners.getListeners();
+ for (int i = 0; i < listeners.length; ++i)
+ ((IInstanceListListener)listeners[i]).listChanged(array);
+ }
+
+ public void addImageListListener(IImageListListener listener) {
+ imageListeners.add(listener);
+ }
+
+ public void removeImageListListener(IImageListListener listener) {
+ imageListeners.remove(listener);
+ }
+
+ public void notifyImageListListeners(DeltaCloudImage[] array) {
+ Object[] listeners = imageListeners.getListeners();
+ for (int i = 0; i < listeners.length; ++i)
+ ((IImageListListener)listeners[i]).listChanged(array);
+ }
+
+ public DeltaCloudInstance[] getInstances() {
+ ArrayList<DeltaCloudInstance> instances = new ArrayList<DeltaCloudInstance>();
+ try {
+ List<Instance> list = client.listInstances();
+ for (Iterator<Instance> i = list.iterator(); i.hasNext();) {
+ DeltaCloudInstance instance = new DeltaCloudInstance(i.next());
+ instances.add(instance);
+ }
+ } catch (DeltaCloudClientException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ DeltaCloudInstance[] instanceArray = new DeltaCloudInstance[instances.size()];
+ instanceArray = instances.toArray(instanceArray);
+ notifyInstanceListListeners(instanceArray);
+ return instanceArray;
+ }
+
+ public DeltaCloudImage[] getImages() {
+ ArrayList<DeltaCloudImage> images = new ArrayList<DeltaCloudImage>();
+ try {
+ List<Image> list = client.listImages();
+ for (Iterator<Image> i = list.iterator(); i.hasNext();) {
+ DeltaCloudImage image = new DeltaCloudImage(i.next());
+ images.add(image);
+ }
+ } catch (DeltaCloudClientException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ return images.toArray(new DeltaCloudImage[images.size()]);
+ }
+
+}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudImage.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudImage.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudImage.java 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,28 @@
+package org.jboss.tools.deltacloud.core;
+
+import org.jboss.deltacloud.client.Image;
+
+public class DeltaCloudImage {
+
+ private Image image;
+
+ public DeltaCloudImage(Image image) {
+ this.image = image;
+ }
+
+ public String getName() {
+ return image.getName();
+ }
+
+ public String getArchitecture() {
+ return image.getArchitecture();
+ }
+
+ public String getDescription() {
+ return image.getDescription();
+ }
+
+ public String getId() {
+ return image.getId();
+ }
+}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudInstance.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudInstance.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudInstance.java 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,42 @@
+package org.jboss.tools.deltacloud.core;
+
+import java.util.List;
+
+import org.jboss.deltacloud.client.Instance;
+
+public class DeltaCloudInstance {
+
+ private Instance instance;
+
+ public DeltaCloudInstance(Instance instance) {
+ this.instance = instance;
+ }
+
+ public String getName() {
+ return instance.getName();
+ }
+
+ public String getId() {
+ return instance.getId();
+ }
+
+ public String getState() {
+ return instance.getState().toString();
+ }
+
+ public String getFlavorId() {
+ return instance.getFlavorId();
+ }
+
+ public String getRealmId() {
+ return instance.getRealmId();
+ }
+
+ public String getImageId() {
+ return instance.getImageId();
+ }
+
+ public List<String> getHostNames() {
+ return instance.getPublicAddresses();
+ }
+}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/DeltaCloudManager.java 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,68 @@
+package org.jboss.tools.deltacloud.core;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.ArrayList;
+
+import org.eclipse.core.runtime.ListenerList;
+
+public class DeltaCloudManager {
+
+ private static DeltaCloudManager cloudManager;
+ private ArrayList<DeltaCloud> clouds = new ArrayList<DeltaCloud>();
+ private ListenerList cloudManagerListeners;
+
+ private DeltaCloudManager() {
+ }
+
+ public static DeltaCloudManager getDefault() {
+ if (cloudManager == null)
+ cloudManager = new DeltaCloudManager();
+ return cloudManager;
+ }
+
+ public DeltaCloud[] getClouds() {
+ // FIXME: testing only
+ if (clouds.size() == 0) {
+ try {
+ DeltaCloud x = new DeltaCloud("Red Hat Cloud", new URL("http://localhost:3001/api"), "mockuser", "mockpassword");
+ addCloud(x);
+ } catch (MalformedURLException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+ return clouds.toArray(new DeltaCloud[clouds.size()]);
+ }
+
+ public void addCloud(DeltaCloud d) {
+ clouds.add(d);
+ notifyListeners(ICloudManagerListener.ADD_EVENT);
+ }
+
+ public void removeCloud(DeltaCloud d) {
+ clouds.remove(d);
+ notifyListeners(ICloudManagerListener.REMOVE_EVENT);
+ }
+
+ public void addCloudManagerListener(ICloudManagerListener listener) {
+ if (cloudManagerListeners == null)
+ cloudManagerListeners = new ListenerList(ListenerList.IDENTITY);
+ cloudManagerListeners.add(listener);
+ }
+
+ public void removeCloudManagerListener(ICloudManagerListener listener) {
+ if (cloudManagerListeners != null)
+ cloudManagerListeners.remove(listener);
+ }
+
+ public void notifyListeners(int type) {
+ if (cloudManagerListeners != null) {
+ Object[] listeners = cloudManagerListeners.getListeners();
+ for (int i = 0; i < listeners.length; ++i) {
+ ((ICloudManagerListener)listeners[i]).changeEvent(type);
+ }
+ }
+ }
+
+}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/ICloudManagerListener.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/ICloudManagerListener.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/ICloudManagerListener.java 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,9 @@
+package org.jboss.tools.deltacloud.core;
+
+public interface ICloudManagerListener {
+
+ public static int ADD_EVENT = 1;
+ public static int REMOVE_EVENT = 2;
+
+ void changeEvent(int type);
+}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/IImageListListener.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/IImageListListener.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/IImageListListener.java 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,7 @@
+package org.jboss.tools.deltacloud.core;
+
+public interface IImageListListener {
+
+ public void listChanged(DeltaCloudImage[] list);
+
+}
Added: trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/IInstanceListListener.java
===================================================================
--- trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/IInstanceListListener.java (rev 0)
+++ trunk/deltacloud/plugins/org.jboss.tools.deltacloud.core/src/org/jboss/tools/deltacloud/core/IInstanceListListener.java 2010-07-23 22:09:11 UTC (rev 23717)
@@ -0,0 +1,7 @@
+package org.jboss.tools.deltacloud.core;
+
+public interface IInstanceListListener {
+
+ public void listChanged(DeltaCloudInstance[] list);
+
+}
More information about the jbosstools-commits
mailing list