@Override public String getQualifiedName() { return owner.getName() + "::" + getName(); }
/** * Check whether the given component is a marked as being a "service". * * @param instance the component instance of interest * @return true if the instance is marked as being a service, false * otherwise */ private boolean isService(ComponentInstance instance) { assert instance != null: "Cannot check if 'null' is a service "; assert instance.getType() != null: "The given component has no type!"; if (instance.getType().hasProperty(IS_SERVICE)) { final Property isService = instance.getType().getProperties().get(IS_SERVICE); final String escapedValue = isService.getValue().trim().toUpperCase(); if (YES_MARKERS.contains(escapedValue)) { return true; } } return false; }
public VMGroup onlyVMs() { final VMGroup selection = new VMGroup(); for (Component component: this) { if (component.isExternal()) { final ExternalComponent external = component.asExternal(); if (external.isVM()) { selection.add(external.asVM()); } } } return selection; }
@Override public boolean remove(Object o) { if (o instanceof Component) { final Component component = (Component) o; if (component.isUsed()) { final String error = String.format("Unable to remove the component '%s' as it is still in use!", component.getQualifiedName()); throw new IllegalStateException(error); } component.getOwner().discard(); } return super.remove(o); } }
@Override public boolean equals(Object that) { if (that == null) { return false; } if (that instanceof Component) { Component other = (Component) that; if (other.getOwner().isDefined() && getOwner().isDefined()) { return other.getOwner().get().equals(getOwner().get()) && other.isNamed(getName()); } } return false; }
@Override public void dispatchTo(Visitor visitor, Component component) { for (ProvidedPort port : component.getProvidedPorts()) { visitor.visitProvidedPort(port); } for (ProvidedExecutionPlatform platforms : component.getProvidedExecutionPlatforms()) { visitor.visitProvidedExecutionPlatform(platforms); } }
@Override public ComponentInstance<? extends Component> applyTo(Deployment deployment) { final String name = getLibrary().createUniqueComponentInstanceName(deployment, type); if (type.isExternal()) { ExternalComponent external = type.asExternal(); if (external.isVM()) { aVMInstance() .named(name) .ofType(type.getName()) .integrateIn(deployment); } else { anExternalComponentInstance() .named(name) .ofType(external.getName()) .integrateIn(deployment); } } else { InternalComponent component = type.asInternal(); ComponentInstance<? extends Component> host = getLibrary().findDestinationFor(deployment, component); return getLibrary().install(deployment, component, host); } return deployment.getComponentInstances().firstNamed(name); } }
ExternalComponent pltf = (ExternalComponent) pltfi.getType(); if(!pltf.isVM()){ if(client.hasProperty("temp-warfile")) { try { PaaSConnector connector = (PaaSConnector) ConnectorFactory.createPaaSConnector(pltf.getProvider()); connector.uploadWar(client.getProperties().valueOf("temp-warfile"), "db-reconfig", clienti.getName(), pltfi.getName(), 600); coordinator.updateStatusInternalComponent(clienti.getName(), State.RUNNING.toString(), CloudAppDeployer.class.getName()); } catch (NullPointerException e) { String endpoint = serveri.getType().asExternal().getEndPoint(); if(endpoint==null){ Map<String, String> env = System.getenv();
@Override public boolean add(Component component) { if (firstNamed(component.getName()) != null) { //final String error = String.format("Component name must be unique! There is already a component named '%s'.", component.getName()); //throw new IllegalStateException(error); return false; } component.getOwner().set(Deployment.this); return super.add(component); }
public final ComponentInstanceGroup<ComponentInstance<? extends Component>> instances() { if (owner.isUndefined()) { return new ComponentInstanceGroup<ComponentInstance<? extends Component>>(); } return getDeployment().getComponentInstances().ofType(getName()); }
private ProvidedPort findServerPort(Deployment container) throws IllegalStateException { final ProvidedPort serverPort = findServer(container).getProvidedPorts().firstNamed(serverPortName); if (serverPort == null) { final String error = String.format("provided port '%s::%s' not found", serverName, serverPortName); throw new IllegalStateException(formatError(error)); } return serverPort; }
private void initProvidedExecutionPlatforms(Component c, net.cloudml.core.Component kc) { List<ProvidedExecutionPlatform> providedExecutionPlatforms = c.getProvidedExecutionPlatforms().toList(); if (providedExecutionPlatforms != null) { List<net.cloudml.core.ProvidedExecutionPlatform> temp = new ArrayList<net.cloudml.core.ProvidedExecutionPlatform>(); for (ProvidedExecutionPlatform pep: providedExecutionPlatforms) { if (pep != null) { net.cloudml.core.ProvidedExecutionPlatform kpep = initProvidedExecutionPlatform(pep, kc); temp.add(kpep); this.providedExecutionPlatforms.put(pep.getName(), kpep); } } kc.setProvidedExecutionPlatforms(temp); } }
/** * Provision the VMs and upload the model with informations about the VM * <p/> * Added: Also deal with PaaS platforms * * @param ems A list of vms */ private void setExternalServices(ExternalComponentInstanceGroup ems) { for (ExternalComponentInstance n : ems) { if (n instanceof VMInstance) provisionAVM((VMInstance) n); else provisionAPlatform(n); } for (ExternalComponentInstance n : ems){ try{ if("loadbalancer".equals(n.getType().asExternal().getServiceType().toLowerCase())) configSubLoadBalancers(n); } catch(Exception e){ continue; } } }
warComp.getProperties().valueOf("warfile"), warComp.getProperties().valueOf("temp-warfile") );
public String toString(){ String result="Component instances:\n"; for(Component c: components) result+=c.getQualifiedName()+"\n"; return result; }
public InternalComponent getClientComponent() { return this.requiredEnd.getOwner().get().asInternal(); }
@Override public void dispatchTo(Visitor visitor, Deployment deployment) { for (Provider provider : deployment.getProviders()) { provider.accept(visitor); } for (Component component : deployment.getComponents()) { component.accept(visitor); } for (ComponentInstance<? extends Component> instance : deployment.getComponentInstances()) { instance.accept(visitor); } for (Relationship relationship : deployment.getRelationships()) { relationship.accept(visitor); } for (RelationshipInstance instance : deployment.getRelationshipInstances()) { instance.accept(visitor); } for(ExecuteInstance execute: deployment.getExecuteInstances()) { execute.accept(visitor); } for (Cloud cloud : deployment.getClouds()) { cloud.accept(visitor); } }
private ProvidedPortInstance findServerPort(Deployment container) { final ComponentInstance server = findServer(container); final ProvidedPort portType = server.getType().getProvidedPorts().firstNamed(serverPort); final ProvidedPortInstance port = server.getProvidedPorts().ofType(portType); if (port == null) { final String error = String.format("Unable to find the provided port '%s' in '%s'", serverPort, server); throw new IllegalStateException(error); } return port; }
private void initProvidedExecutionPlatforms(net.cloudml.core.Component kc, Component c) { List<net.cloudml.core.ProvidedExecutionPlatform> providedExecutionPlatforms = kc.getProvidedExecutionPlatforms(); if (providedExecutionPlatforms != null) { for (net.cloudml.core.ProvidedExecutionPlatform kpep: providedExecutionPlatforms) { c.getProvidedExecutionPlatforms().add(initProvidedExecutionPlatform(kpep, c)); } } }