Package org.apache.tuscany.sca.domain.model

Examples of org.apache.tuscany.sca.domain.model.NodeModel


   
    public void registerNode(String nodeURI, String nodeURL, Externalizable nodeManagerReference) throws DomainException {
        // try and remove it first just in case it's already registered
        unregisterNode(nodeURI);
       
        NodeModel node = domainModelFactory.createNode();
        node.setNodeURI(nodeURI);
        node.setNodeURL(nodeURL);
        node.setNodeManagerReference(nodeManagerReference);
        node.setLifecycleState(LifecyleState.AVAILABLE);
        domainModel.getNodes().put(nodeURI, node);    
       
        logger.log(Level.INFO, "Registered node: " +
                               nodeURI +
                               " at endpoint " +
View Full Code Here


           
            if ( domainModel.getContributions().containsKey(contributionURI) == false ){
                contributionModel = parseContribution(contributionURI, contributionURL);

                // assign the contribution to the referenced node
                NodeModel node = domainModel.getNodes().get(nodeURI);
               
                if ((node != null) && (contributionModel != null)) {
                    node.getContributions().put(contributionURI, contributionModel);
                }
            } else {
                // TODO - throw an exception here ?
            }
           
View Full Code Here

                   
                // remove contribution from the domain
                domainModel.getContributions().remove(contributionURI);

                // remove the contribution from the referenced node
                NodeModel nodeModel = domainModel.getNodes().get(nodeURI);
               
                if ((nodeModel != null)) {
                    nodeModel.getContributions().remove(contributionURI);
                   
                    // remove deployed composites
                    for (QName compositeQName : contributionModel.getDeployedComposites().keySet()){
                        nodeModel.getDeployedComposites().remove(compositeQName);
                    }
                }
            }           
        } catch (Exception ex) {
View Full Code Here

        try {
            QName compositeQName = QName.valueOf(compositeQNameString);
           
            if (!domainModel.getDeployedComposites().containsKey(compositeQName)){
                // get the composite from the node
                NodeModel node = domainModel.getNodes().get(nodeURI);
               
                if (node != null) {
                    if (node.getLifecycleState() != LifecyleState.AVAILABLE){
                        throw new DomainException("Node " + nodeURI + " is already marked as active");
                    } else {
                        for (ContributionModel contributionModel : node.getContributions().values()){
                            CompositeModel compositeModel = contributionModel.getComposites().get(compositeQName);
                           
                            if (compositeModel != null){
                                contributionModel.getDeployedComposites().put(compositeQName, compositeModel);
                                node.getDeployedComposites().put(compositeQName, compositeModel);
                                domainModel.getDeployedComposites().put(compositeQName, compositeModel);
                                domainManagementRuntime.getCompositeBuilder().build(compositeModel.getComposite());
                                domainModel.getDomainLevelComposite().getIncludes().add(compositeModel.getComposite());
                               
View Full Code Here

        serviceName = domainBuilder.getServiceNameFromReference(targetServiceName);
       
        domainBuilder.updateDomainLevelServiceURI(domainComposite, targetServiceName, bindingClassName, URL);       
       
        // find the node with the service
        NodeModel node = domainModel.getNodes().get(nodeURI);    
       
        if (node != null){
           
            // collect the service info
            ServiceModel serviceModel = domainModelFactory.createService();
            serviceModel.setServiceURI(targetServiceName);
            serviceModel.setServiceURL(URL);
            serviceModel.setServiceBinding(bindingClassName);
           
            //store the service
            node.getServices().put(targetServiceName+bindingClassName, serviceModel);
           
            if (componentName != null){
                node.getServices().put(componentName+bindingClassName, serviceModel);
            }
            logger.log(Level.INFO, "Registering service: [" +
                                   domainURI + " " +
                                   targetServiceName + " " +
                                   URL + " " +
View Full Code Here

        }

    }   
    
    public void unregisterServiceEndpoint(String domainURI, String nodeURI, String serviceName, String bindingClassName) throws DomainException{
        NodeModel node = domainModel.getNodes().get(nodeURI);
        node.getServices().remove(serviceName + bindingClassName);
       
        // extract the short name from the long name
        String shortServiceName = null;
        if (serviceName.indexOf("/") >= 0 ) {
            shortServiceName = serviceName.substring(0, serviceName.indexOf("/"));
        }
       
        node.getServices().remove(shortServiceName + bindingClassName);
       
        logger.log(Level.FINE, "Removed service: " +  serviceName );  

    }
View Full Code Here

            // build the contribution to create the services and references
            domainModel.getDeployedComposites().put(compositeQName, compositeModel);
            domainManagementRuntime.getCompositeBuilder().build(compositeModel.getComposite());               
            domainModel.getDomainLevelComposite().getIncludes().add(compositeModel.getComposite());
           
            NodeModel node = null;
           
            // find the node for the composite to run on
            if (nodeURI != null) {
                // find the named node
                node = domainModel.getNodes().get(nodeURI);
               
                if (node == null){
                    throw new DomainException("Node " + nodeURI + " not found in domain");
                }
            } else {
                // noddy algorithm to find a free node
                // TODO - do something better
                for(NodeModel tmpNode : domainModel.getNodes().values()) {
                    if (tmpNode.getLifecycleState() == LifecyleState.AVAILABLE){
                        node = tmpNode;
                    }
                }
               
                if (node == null){
                    throw new DomainException("No free node available to run composite "  + compositeQName.toString());
                }               
            }

            // find all the composites that the node must know about
            List<Contribution> dependentContributions = new ArrayList<Contribution>();
            findDependentContributions(contributionModel.getContribution(), dependentContributions);
            
            // assign the set of contributions to the node model
            for (Contribution tmpContribution : dependentContributions){
                node.getContributions().put(tmpContribution.getURI(),
                                            domainModel.getContributions().get(tmpContribution.getURI()));
            }
           
            // assign the composite to the node model
            node.getDeployedComposites().put(compositeQName, compositeModel);
           
            node.setLifecycleState(LifecyleState.DEPLOYED);
   
            // now pass this information over to the real node
      
           
            // add contributions. Use the dependent contribution list here rather than the
View Full Code Here

   
    public NodeInfo getNodeDescription(String nodeURI){
       
        NodeInfo nodeInfo = new NodeInfoImpl();
        DomainModel domain =  domainSPI.getDomainModel();
        NodeModel node = domain.getNodes().get(nodeURI);
       
        nodeInfo.setNodeURI(nodeURI);
        nodeInfo.setNodeURL(node.getNodeURL());
        nodeInfo.getContributions().addAll(node.getContributions().keySet());
        nodeInfo.getDeployedComposites().addAll(node.getDeployedComposites().keySet());
        nodeInfo.getServices().addAll(node.getServices().keySet());
               
        return nodeInfo;
    }   
View Full Code Here

           
            if (contributionModel == null){
                throw new DomainException("Can't find contribution for composite " + compositeQName.toString());
            }
           
            NodeModel node = null;
           
            // find the node that has this composite
            for(NodeModel tmpNode : domainModel.getNodes().values()) {
                if (tmpNode.getDeployedComposites().containsKey(compositeQName)){
                    node = tmpNode;
                    break;
                }
            }
           
            if (node != null){
                if (node.getLifecycleState() == LifecyleState.DEPLOYED){
                 // start the node
                    ((NodeModelImpl)node).getSCANodeManagerService().start();
                    node.setLifecycleState(LifecyleState.RUNNING);
                }
               
            } else {
                // composite not assigned to node for some reason
                throw new DomainException("Composite "  + compositeQName.toString() +
View Full Code Here

   
    public void registerNode(String nodeURI, String nodeURL, Externalizable nodeManagerReference) throws DomainException {
        // try and remove it first just in case it's already registered
        unregisterNode(nodeURI);
       
        NodeModel node = domainModelFactory.createNode();
        node.setNodeURI(nodeURI);
        node.setNodeURL(nodeURL);
        node.setNodeManagerReference(nodeManagerReference);
        node.setLifecycleState(LifecyleState.AVAILABLE);
        domainModel.getNodes().put(nodeURI, node);    
       
        logger.log(Level.INFO, "Registered node: " +
                               nodeURI +
                               " at endpoint " +
View Full Code Here

TOP

Related Classes of org.apache.tuscany.sca.domain.model.NodeModel

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.