brooklyn-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From henev...@apache.org
Subject [34/50] brooklyn-library git commit: Removal of all Cloud Foundry references in the code and in the poms
Date Mon, 01 Feb 2016 17:46:52 GMT
Removal of all Cloud Foundry references in the code and in the poms


Project: http://git-wip-us.apache.org/repos/asf/brooklyn-library/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-library/commit/754897f6
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-library/tree/754897f6
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-library/diff/754897f6

Branch: refs/heads/0.5.0
Commit: 754897f674e1b65db9009b5fc354c5d15227b53d
Parents: 74e4016
Author: Peter Veentjer <alarmnummer@gmail.com>
Authored: Fri Apr 19 14:49:20 2013 +0300
Committer: Peter Veentjer <alarmnummer@gmail.com>
Committed: Fri Apr 19 14:49:20 2013 +0300

----------------------------------------------------------------------
 .../brooklyn/demo/GlobalWebFabricExample.java   |  13 +-
 .../whirr/WebFabricWithHadoopExample.java       |  19 +--
 examples/pom.xml                                |   1 -
 examples/portable-cloudfoundry/.gitignore       |   2 -
 examples/portable-cloudfoundry/README.txt       |  14 --
 examples/portable-cloudfoundry/pom.xml          |  72 -----------
 .../MovableCloudFoundryClusterExample.java      |  37 ------
 .../MovableElasticWebAppCluster.java            |  58 ---------
 .../MovableElasticWebAppClusterImpl.groovy      | 127 -------------------
 .../cloudfoundry/MovableEntityTrait.java        |  21 ---
 .../src/main/resources/logback.xml              |   5 -
 11 files changed, 3 insertions(+), 366 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/global-web-fabric/src/main/java/brooklyn/demo/GlobalWebFabricExample.java
----------------------------------------------------------------------
diff --git a/examples/global-web-fabric/src/main/java/brooklyn/demo/GlobalWebFabricExample.java
b/examples/global-web-fabric/src/main/java/brooklyn/demo/GlobalWebFabricExample.java
index 774affa..c6c92f9 100644
--- a/examples/global-web-fabric/src/main/java/brooklyn/demo/GlobalWebFabricExample.java
+++ b/examples/global-web-fabric/src/main/java/brooklyn/demo/GlobalWebFabricExample.java
@@ -10,15 +10,12 @@ import org.slf4j.LoggerFactory;
 
 import brooklyn.config.StringConfigMap;
 import brooklyn.entity.basic.AbstractApplication;
-import brooklyn.entity.basic.Attributes;
 import brooklyn.entity.basic.Entities;
 import brooklyn.entity.dns.geoscaling.GeoscalingDnsService;
 import brooklyn.entity.group.DynamicFabric;
 import brooklyn.entity.proxy.AbstractController;
 import brooklyn.entity.proxying.EntitySpecs;
 import brooklyn.entity.webapp.ElasticJavaWebAppService;
-import brooklyn.event.basic.DependentConfiguration;
-import brooklyn.extras.cloudfoundry.CloudFoundryJavaWebAppCluster;
 import brooklyn.launcher.BrooklynLauncher;
 import brooklyn.location.basic.PortRanges;
 import brooklyn.util.CommandLineUtil;
@@ -36,9 +33,7 @@ public class GlobalWebFabricExample extends AbstractApplication {
     static final List<String> DEFAULT_LOCATIONS = ImmutableList.of(
             "aws-ec2:eu-west-1",
             "aws-ec2:ap-southeast-1",
-            "aws-ec2:us-west-1" 
-//            "cloudfoundry:https://api.aws.af.cm/",
-        );
+            "aws-ec2:us-west-1" );
 
     @Override
     public void init() {
@@ -59,11 +54,7 @@ public class GlobalWebFabricExample extends AbstractApplication {
                 .configure(ElasticJavaWebAppService.ROOT_WAR, WAR_PATH)
                 
                 //load-balancer instances must run on 80 to work with GeoDNS (default is
8000)
-                .configure(AbstractController.PROXY_HTTP_PORT, PortRanges.fromInteger(80))
-                
-                //CloudFoundry requires to be told what URL it should listen to, which is
chosen by the GeoDNS service
-                .configure(CloudFoundryJavaWebAppCluster.HOSTNAME_TO_USE_FOR_URL,
-                        DependentConfiguration.attributeWhenReady(geoDns, Attributes.HOSTNAME)));
+                .configure(AbstractController.PROXY_HTTP_PORT, PortRanges.fromInteger(80)));
 
         //tell GeoDNS what to monitor
         geoDns.setTargetEntityProvider(webFabric);

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/hadoop-and-whirr/src/main/java/brooklyn/extras/whirr/WebFabricWithHadoopExample.java
----------------------------------------------------------------------
diff --git a/examples/hadoop-and-whirr/src/main/java/brooklyn/extras/whirr/WebFabricWithHadoopExample.java
b/examples/hadoop-and-whirr/src/main/java/brooklyn/extras/whirr/WebFabricWithHadoopExample.java
index 11916a1..ab3e052 100644
--- a/examples/hadoop-and-whirr/src/main/java/brooklyn/extras/whirr/WebFabricWithHadoopExample.java
+++ b/examples/hadoop-and-whirr/src/main/java/brooklyn/extras/whirr/WebFabricWithHadoopExample.java
@@ -3,7 +3,6 @@ package brooklyn.extras.whirr;
 import static com.google.common.base.Preconditions.checkNotNull;
 
 import java.io.File;
-import java.io.IOException;
 import java.io.StringReader;
 import java.net.InetAddress;
 import java.net.URI;
@@ -11,11 +10,6 @@ import java.util.Collection;
 import java.util.List;
 import java.util.Set;
 
-import org.apache.http.HttpResponse;
-import org.apache.http.client.ClientProtocolException;
-import org.apache.http.client.methods.HttpGet;
-import org.apache.http.impl.client.DefaultHttpClient;
-import org.apache.http.util.EntityUtils;
 import org.apache.whirr.service.hadoop.HadoopCluster;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -24,7 +18,6 @@ import brooklyn.config.StringConfigMap;
 import brooklyn.entity.Entity;
 import brooklyn.entity.Group;
 import brooklyn.entity.basic.AbstractApplication;
-import brooklyn.entity.basic.Attributes;
 import brooklyn.entity.basic.DynamicGroup;
 import brooklyn.entity.basic.Entities;
 import brooklyn.entity.basic.StartableApplication;
@@ -37,10 +30,8 @@ import brooklyn.entity.webapp.ElasticJavaWebAppService;
 import brooklyn.entity.webapp.jboss.JBoss7Server;
 import brooklyn.event.SensorEvent;
 import brooklyn.event.SensorEventListener;
-import brooklyn.event.basic.DependentConfiguration;
 import brooklyn.event.feed.http.HttpPollValue;
 import brooklyn.event.feed.http.HttpPolls;
-import brooklyn.extras.cloudfoundry.CloudFoundryJavaWebAppCluster;
 import brooklyn.extras.whirr.hadoop.WhirrHadoopCluster;
 import brooklyn.launcher.BrooklynLauncher;
 import brooklyn.location.Location;
@@ -75,12 +66,7 @@ public class WebFabricWithHadoopExample extends AbstractApplication implements
S
         //web locations
         "aws-ec2:eu-west-1",
         "aws-ec2:ap-southeast-1",
-        "aws-ec2:us-west-1"
-        
-        // cloudfoundry seems to have a timeout in upload time
-        // (in any case we don't have a clean way to initiate the proxy settings in there)
-//        "cloudfoundry:https://api.aws.af.cm/",
-    );
+        "aws-ec2:us-west-1");
 
     public static final String WAR_PATH = "classpath://hello-world-hadoop-webapp.war";
     
@@ -119,9 +105,6 @@ public class WebFabricWithHadoopExample extends AbstractApplication implements
S
                 .configure(ElasticJavaWebAppService.ROOT_WAR, WAR_PATH)
                 //load-balancer instances must run on 80 to work with GeoDNS (default is
8000)
                 .configure(AbstractController.PROXY_HTTP_PORT, PortRanges.fromInteger(80))
-                //CloudFoundry requires to be told what URL it should listen to, which is
chosen by the GeoDNS service
-                .configure(CloudFoundryJavaWebAppCluster.HOSTNAME_TO_USE_FOR_URL,
-                        DependentConfiguration.attributeWhenReady(geoDns, Attributes.HOSTNAME))
                 );
 //                .policy(AutoScalerPolicy.builder()
 //                        .metric(DynamicWebAppCluster.AVERAGE_REQUESTS_PER_SECOND)

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/pom.xml
----------------------------------------------------------------------
diff --git a/examples/pom.xml b/examples/pom.xml
index 3048876..bb82c5f 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -35,7 +35,6 @@
         <module>simple-web-cluster</module>
         <module>global-web-fabric</module>
         <module>hadoop-and-whirr</module>
-        <module>portable-cloudfoundry</module>
         <module>simple-messaging-pubsub</module>
         <module>simple-nosql-cluster</module>
     </modules>

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/portable-cloudfoundry/.gitignore
----------------------------------------------------------------------
diff --git a/examples/portable-cloudfoundry/.gitignore b/examples/portable-cloudfoundry/.gitignore
deleted file mode 100644
index 20738a7..0000000
--- a/examples/portable-cloudfoundry/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-brooklyn-example-portable-cloudfoundry/
-brooklyn-example-portable-cloudfoundry.tar.gz
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/portable-cloudfoundry/README.txt
----------------------------------------------------------------------
diff --git a/examples/portable-cloudfoundry/README.txt b/examples/portable-cloudfoundry/README.txt
deleted file mode 100644
index f2d49f0..0000000
--- a/examples/portable-cloudfoundry/README.txt
+++ /dev/null
@@ -1,14 +0,0 @@
-Instructions for running examples
-=================================
-
-The commands below assume that the `brooklyn` script is already on your $PATH, and you are
in the "examples" directory:
-
-  cd portable-cloudfoundry
-  export BROOKLYN_CLASSPATH=$(pwd)/target/classes
-  
-  # Launches a web-app in VMware's cloudfoundry
-  brooklyn launch --app brooklyn.example.cloudfoundry.MovableCloudFoundryClusterExample --location
localhost
-
----
-
-For more information, please visit: http://brooklyncentral.github.com/use/examples/portable-cloudfoundry/

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/portable-cloudfoundry/pom.xml
----------------------------------------------------------------------
diff --git a/examples/portable-cloudfoundry/pom.xml b/examples/portable-cloudfoundry/pom.xml
deleted file mode 100644
index 1dde430..0000000
--- a/examples/portable-cloudfoundry/pom.xml
+++ /dev/null
@@ -1,72 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-    <packaging>jar</packaging>
-    <artifactId>brooklyn-example-portable-cloudfoundry</artifactId>
-    <name>Brooklyn Portable CloudFoundry Example</name>
-
-    <parent>
-        <groupId>io.brooklyn.example</groupId>
-        <artifactId>brooklyn-examples-parent</artifactId>
-        <version>0.5.0-SNAPSHOT</version>   <!-- BROOKLYN_VERSION -->
-        <relativePath>../pom.xml</relativePath>
-    </parent>
-
-    <dependencies>
-        <dependency>
-            <groupId>io.brooklyn</groupId>
-            <artifactId>brooklyn-all</artifactId>
-            <version>${project.version}</version>
-            <classifier>with-dependencies</classifier>
-        </dependency>
-    </dependencies>
-
-    <build>
-        <plugins>
-            <plugin>
-                <artifactId>maven-dependency-plugin</artifactId>
-                <!-- copy the WAR so it is available on the classpath for programmatic
deployment -->
-                <executions>
-                    <execution>
-                        <id>copy</id>
-                        <phase>process-classes</phase>
-                        <goals>
-                            <goal>copy</goal>
-                        </goals>
-                        <configuration>
-                            <artifactItems>
-                                <artifactItem>
-                                    <!-- this can fail in eclipse trying to copy _from_
target/classes.
-                                         see http://jira.codehaus.org/browse/MDEP-259 -->
-                                    <groupId>${project.groupId}</groupId>
-                                    <artifactId>brooklyn-example-hello-world-webapp</artifactId>
-                                    <version>${project.version}</version>
-                                    <type>war</type>
-                                    <overWrite>true</overWrite>
-                                    <outputDirectory>target/classes</outputDirectory>
-                                    <destFileName>hello-world-webapp.war</destFileName>
-                                </artifactItem>
-                            </artifactItems>
-                        </configuration>
-                    </execution>
-                </executions>
-            </plugin>
-            <plugin>
-                <artifactId>maven-clean-plugin</artifactId>
-                <configuration>
-                    <filesets>
-                        <fileset>
-                            <directory>${project.basedir}</directory>
-							<includes>
-                                <include>${project.artifactId}/</include>
-                                <include>brooklyn*.log</include>
-                                <include>brooklyn*.log.*</include>
-                                <include>stacktrace.log</include>
-                            </includes>
-                        </fileset>
-                    </filesets>
-                </configuration>
-            </plugin>
-        </plugins>
-    </build>
-        
-</project>

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableCloudFoundryClusterExample.java
----------------------------------------------------------------------
diff --git a/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableCloudFoundryClusterExample.java
b/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableCloudFoundryClusterExample.java
deleted file mode 100644
index 3b30d1e..0000000
--- a/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableCloudFoundryClusterExample.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package brooklyn.example.cloudfoundry;
-
-import java.util.List;
-
-import brooklyn.entity.basic.AbstractApplication;
-import brooklyn.entity.basic.Entities;
-import brooklyn.entity.proxying.EntitySpecs;
-import brooklyn.launcher.BrooklynLauncher;
-import brooklyn.util.CommandLineUtil;
-
-import com.google.common.collect.Lists;
-
-public class MovableCloudFoundryClusterExample extends AbstractApplication {
-
-    public static final String DEFAULT_LOCATION = "cloudfoundry";
-    public static final String WAR_FILE_URL = "classpath://hello-world-webapp.war";
-
-    @Override
-    public void init() {
-        addChild(EntitySpecs.spec(MovableElasticWebAppCluster.class)
-                .configure("war", WAR_FILE_URL));
-    }
-    
-    public static void main(String[] argv) {
-        List<String> args = Lists.newArrayList(argv);
-        String port =  CommandLineUtil.getCommandLineOption(args, "--port", "8081+");
-        String location = CommandLineUtil.getCommandLineOption(args, "--location", DEFAULT_LOCATION);
-
-        BrooklynLauncher launcher = BrooklynLauncher.newInstance()
-                .application(EntitySpecs.appSpec(MovableCloudFoundryClusterExample.class).displayName("Movable
Web Cluster"))
-                .webconsolePort(port)
-                .location(location)
-                .start();
-         
-        Entities.dumpInfo(launcher.getApplications());
-    }
-}

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableElasticWebAppCluster.java
----------------------------------------------------------------------
diff --git a/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableElasticWebAppCluster.java
b/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableElasticWebAppCluster.java
deleted file mode 100644
index 95d74fa..0000000
--- a/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableElasticWebAppCluster.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package brooklyn.example.cloudfoundry;
-
-import java.util.Collection;
-
-import brooklyn.config.ConfigKey;
-import brooklyn.entity.Effector;
-import brooklyn.entity.Entity;
-import brooklyn.entity.basic.Description;
-import brooklyn.entity.basic.MethodEffector;
-import brooklyn.entity.basic.NamedParameter;
-import brooklyn.entity.proxying.ImplementedBy;
-import brooklyn.entity.trait.Startable;
-import brooklyn.entity.webapp.JavaWebAppService;
-import brooklyn.event.basic.BasicAttributeSensor;
-import brooklyn.event.basic.BasicConfigKey;
-import brooklyn.util.flags.SetFromFlag;
-
-@ImplementedBy(MovableElasticWebAppClusterImpl.class)
-public interface MovableElasticWebAppCluster extends Entity, Startable, MovableEntityTrait
{
-
-    // this advertises that this config key is easily available on this entity,
-    // either by passing (war: "classpath://...") in the constructor or by setConfig(ROOT_WAR).
-    // as a config variable, it will be inherited by children, so the children web app entities
will pick it up.
-    @SetFromFlag("war")
-    public static final ConfigKey<String> ROOT_WAR = JavaWebAppService.ROOT_WAR;
-    
-    @SetFromFlag("ttl")
-    public static final BasicConfigKey<Long> TIME_TO_LIVE_SECONDS = new BasicConfigKey<Long>(
-            Long.class, "movable.time.to.live", "Time to keep demoted cluster alive (should
exceed GeoDNS TTL; default 0)", 0L);
-
-    public static final BasicAttributeSensor<String> PRIMARY_SVC_ENTITY_ID = new BasicAttributeSensor<String>(
-            String.class, "movable.primary.id", "Entity ID of primary web-app service");
-    
-    public static final BasicAttributeSensor<Collection<String>> SECONDARY_SVC_ENTITY_IDS
= new BasicAttributeSensor( 
-            Collection.class, "movable.secondary.ids", "Entity IDs of secondary web-app services");
-    
-    public static final Effector<String> CREATE_SECONDARY_IN_LOCATION = new MethodEffector<String>(MovableElasticWebAppCluster.class,
"createSecondaryInLocation");
-    public static final Effector<String> PROMOTE_SECONDARY = new MethodEffector<String>(MovableElasticWebAppCluster.class,
"promoteSecondary");
-    public static final Effector<String> DESTROY_SECONDARY = new MethodEffector<String>(MovableElasticWebAppCluster.class,
"destroySecondary");
-    
-    /** creates a new secondary instance, in the given location, returning the ID of the
secondary created and started */
-    @Description("create a new secondary instance in the given location")
-    public String createSecondaryInLocation(
-            @NamedParameter("location") @Description("the location where to start the secondary")
String l);
-
-    /** promotes the indicated secondary,
-     * returning the ID of the former-primary which has been demoted */
-    @Description("promote the indicated secondary to primary (demoting the existing primary)")
-    public String promoteSecondary(
-            @NamedParameter("idOfSecondaryToPromote") @Description("ID of secondary entity
to promote") 
-            String idOfSecondaryToPromote);
-    
-    /** destroys the indicated secondary */
-    @Description("destroy the indicated secondary")
-    public void destroySecondary(
-            @NamedParameter("idOfSecondaryToDestroy") @Description("ID of secondary entity
to destroy")
-            String idOfSecondaryToDestroy);
-}

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableElasticWebAppClusterImpl.groovy
----------------------------------------------------------------------
diff --git a/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableElasticWebAppClusterImpl.groovy
b/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableElasticWebAppClusterImpl.groovy
deleted file mode 100644
index 599f0b8..0000000
--- a/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableElasticWebAppClusterImpl.groovy
+++ /dev/null
@@ -1,127 +0,0 @@
-package brooklyn.example.cloudfoundry
-
-import org.jclouds.cloudstack.options.AddClusterOptions;
-import org.slf4j.Logger
-import org.slf4j.LoggerFactory
-
-import brooklyn.entity.Effector
-import brooklyn.entity.Entity
-import brooklyn.entity.basic.AbstractEntity
-import brooklyn.entity.basic.ApplicationBuilder;
-import brooklyn.entity.basic.Entities
-import brooklyn.entity.basic.EntityLocal
-import brooklyn.entity.trait.Startable
-import brooklyn.entity.trait.StartableMethods
-import brooklyn.entity.webapp.ElasticJavaWebAppService
-import brooklyn.location.Location
-import brooklyn.location.basic.LocationRegistry
-import brooklyn.management.EntityManager
-import brooklyn.util.task.Tasks
-
-import com.google.common.collect.Iterables
-
-public class MovableElasticWebAppClusterImpl extends AbstractEntity implements MovableElasticWebAppCluster
{
-
-    public static final Logger log = LoggerFactory.getLogger(MovableElasticWebAppClusterImpl.class);
-    
-    public MovableElasticWebAppClusterImpl() {
-    }
-    
-    /**
-     * @deprecated since 0.5; use {@link EntityManager#createEntity(EntitySpec) or {@link
ApplicationBuilder#addChild(EntitySpec)}
-     */
-    @Deprecated
-    public MovableElasticWebAppClusterImpl(Map flags, Entity parent) {
-        super(flags, parent);
-    }
-    
-    @Override
-    public void start(Collection<? extends Location> locations) {
-        if (!getChildren().isEmpty()) {
-            log.debug("Starting $this; it already has children, so start on children is being
invoked")
-            StartableMethods.start(this, locations);
-        } else {
-            Entity svc = createClusterIn( Iterables.getOnlyElement(locations) );
-            log.debug("Starting $this; no children, so created $svc and now starting it")
-            if (svc in Startable) ((Startable)svc).start(locations);
-            setAttribute(PRIMARY_SVC_ENTITY_ID, svc.id)
-        }
-    }
-
-    public EntityLocal createClusterIn(Location location) {
-        //TODO the policy
-//        app.web.cluster.addPolicy(app.policy)
-        EntityLocal result = new ElasticJavaWebAppService.Factory()
-                .newFactoryForLocation(location)
-                .newEntity([:], this);
-        Entities.manage(result);
-        return result;
-    }
-    
-    @Override
-    public void stop() {
-        StartableMethods.stop(this);
-    }
-
-    @Override
-    public void restart() {
-        StartableMethods.restart(this);
-    }
-
-    /* 
-     * "move" consists of creating a secondary (call it Y),
-     * promoting this one (Y) swapping it for the old-primary (call it X),
-     * then destroying the old-primary-now-secondary (X)
-     */
-
-    @Override
-    public String createSecondaryInLocation(String l) {
-        Location location = new LocationRegistry().resolve(l);
-        Entity svc = createClusterIn(location);
-        Entities.start(svc, [location]);
-        setAttribute(SECONDARY_SVC_ENTITY_IDS, (getAttribute(SECONDARY_SVC_ENTITY_IDS) ?:
[]) + svc.id);
-        return svc.id;
-    }
-
-    @Override
-    public String promoteSecondary(String idOfSecondaryToPromote) {
-        Collection<String> currentSecondaryIds = getAttribute(SECONDARY_SVC_ENTITY_IDS)
-        if (!currentSecondaryIds.contains(idOfSecondaryToPromote)) 
-            throw new IllegalStateException("Cannot promote unknown secondary $idOfSecondaryToPromote
"+
-                "(available secondaries are $currentSecondaryIds)");
-            
-        String primaryId = getAttribute(PRIMARY_SVC_ENTITY_ID);
-        
-        setAttribute(PRIMARY_SVC_ENTITY_ID, idOfSecondaryToPromote);
-        currentSecondaryIds.remove(idOfSecondaryToPromote);
-        currentSecondaryIds << primaryId;
-        setAttribute(SECONDARY_SVC_ENTITY_IDS, currentSecondaryIds);
-        return primaryId;
-    }
-    
-    @Override
-    public void destroySecondary(String idOfSecondaryToDestroy) {
-        Collection<String> currentSecondaryIds = getAttribute(SECONDARY_SVC_ENTITY_IDS)
-        if (!currentSecondaryIds.contains(idOfSecondaryToDestroy))
-            throw new IllegalStateException("Cannot promote unknown secondary $idOfSecondaryToDestroy
"+
-                "(available secondaries are $currentSecondaryIds)");
-            
-        currentSecondaryIds.remove(idOfSecondaryToDestroy);
-        setAttribute(SECONDARY_SVC_ENTITY_IDS, currentSecondaryIds);
-        
-        Entity secondary = getEntityManager().getEntity(idOfSecondaryToDestroy);
-        Entities.destroy(secondary);
-    }
-
-    @Override
-    public String move(String location) {
-        String newPrimary = createSecondaryInLocation(location);
-        String oldPrimary = promoteSecondary(newPrimary);
-        long ttl = getConfig(TIME_TO_LIVE_SECONDS);
-        if (ttl>0)
-            Tasks.withBlockingDetails("waiting for TTL to destroy old primary") { Thread.sleep(ttl*1000);
}
-        destroySecondary(oldPrimary);
-        return newPrimary;
-    }
-        
-}

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableEntityTrait.java
----------------------------------------------------------------------
diff --git a/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableEntityTrait.java
b/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableEntityTrait.java
deleted file mode 100644
index 5f5afe2..0000000
--- a/examples/portable-cloudfoundry/src/main/java/brooklyn/example/cloudfoundry/MovableEntityTrait.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package brooklyn.example.cloudfoundry;
-
-import brooklyn.entity.Effector;
-import brooklyn.entity.basic.Description;
-import brooklyn.entity.basic.MethodEffector;
-import brooklyn.entity.basic.NamedParameter;
-
-public interface MovableEntityTrait {
-
-    Effector<String> MOVE = new MethodEffector<String>(MovableEntityTrait.class,
"move");
-    
-    /** Effectively move the entity to the new location.
-     * A new entity may be created (and the old destroyed) to effect this.
-     * @param location the new location where the entity should running
-     * @return the entity ID of the primary entity (after the move) in the specified location
*/
-    @Description("Effectively move the entity to the new location.")
-    public String move(
-        @NamedParameter("location") @Description("The new location where the entity should
be running") 
-        String location);
-
-}

http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/754897f6/examples/portable-cloudfoundry/src/main/resources/logback.xml
----------------------------------------------------------------------
diff --git a/examples/portable-cloudfoundry/src/main/resources/logback.xml b/examples/portable-cloudfoundry/src/main/resources/logback.xml
deleted file mode 100644
index 25f3755..0000000
--- a/examples/portable-cloudfoundry/src/main/resources/logback.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<configuration>
-
-    <include resource="brooklyn/logback-default.xml"/>
-    
-</configuration>


Mime
View raw message