Examples of AvailabilityService


Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

            final Target target = getTarget(targetName);
            final ConfigTarget configTarget = target.getConfigTarget();

            Config config = ConfigAPIHelper.getConfigByName(getConfigContext(),
                    configTarget.getName());
            AvailabilityService availabilityService = config.getAvailabilityService();
           
            _logger.log(Level.FINE, "Checking if Clb Command is valid");
            if (clbConfigName != null && (dcrFileName != null || httplbPolicy != null || siplbPolicy != null || lbtargetName != null || lbenableallInstances.equals("false"))) {
                String msg = _strMgr.getString("InvalidClbCommand");
                throw new MBeanException(new ConfigException(msg));
            }

            if (availabilityService == null) {
                availabilityService = new AvailabilityService();
                config.setAvailabilityService(availabilityService);
            }

            ConvergedLoadBalancer clb = availabilityService.getConvergedLoadBalancer();

            if (clb != null) {
                String msg = _strMgr.getString("CLBAlreadyConfigured", targetName);
                throw new MBeanException(new ConfigException(msg));
            }

            Boolean selfLb = Boolean.valueOf(selfLoadbalance);
            if (selfLb.booleanValue() && lbtargetName == null)
                lbtargetName = targetName;
           
            _logger.log(Level.FINE, "Checking if selfloadbalance option and target provided are valid");
            if (selfLb.booleanValue() && !lbtargetName.equals(targetName)) {
                String msg = _strMgr.getString("ClbTargetSameHostingTarget");
                throw new MBeanException(new ConfigException(msg));
            }
            else if (!selfLb.booleanValue()) {
                if (lbtargetName != null && lbtargetName.equals(targetName)) {
                    String msg = _strMgr.getString("ClbTargetNotSameHostingTarget");
                    throw new MBeanException(new ConfigException(msg));
                }
            }
           
            if (clbConfigName == null) {
                // create clb config name with given clbName
                clbConfigName = clbName + "_CLB_CONFIG";
                _logger.log(Level.FINE, "Creating CLB Config " + clbConfigName + "as part of creation of CLB");
          AttributeList al = new AttributeList();
                al.add(new Attribute(DCRFILE, dcrFileName));
                al.add(new Attribute(HTTPLBPOLICY, httplbPolicy));
                al.add(new Attribute(SIPLBPOLICY, siplbPolicy));
                al.add(new Attribute(LBENABLEINSTANCES, lbenableallInstances));
    al.add(new Attribute(TARGET, targetName));
                createConvergedLbConfig(al, null, clbConfigName);
            }
            else {
                // check if given clb config exists and
                // if clbconfig has dcr file already set
                // copy the dcr file to corresponding cluster config directory
                ConvergedLbConfig clbConfig = getConvergedLbConfig(clbConfigName);
                copyDcrFile(clbConfig, targetName);
            }
                   
            // we have to create it
            clb = new ConvergedLoadBalancer();
            clb.setName(clbName);
            clb.setConfigFile(clbConfigFile);
            clb.setConvergedLbConfigName(clbConfigName);
            clb.setAutoCommit(autocommit);

            Proxy proxy = new Proxy();

            //properties
            if (null != props) {
                proxy.setElementProperty(convertPropertiesToElementProperties(
                        props));
            }

            clb.setProxy(proxy);
            availabilityService.setConvergedLoadBalancer(clb);
           
            // If lbenableallinstances is true, set lb-enabled flag to true
              setLbEnabledFlag(lbenableallInstances, clbConfigName);
           
            String cfgName = (String) getConfigName(clbName).get("cfgName");
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

        try {
            ConfigContext ctx = AdminService.getAdminService().getAdminContext()
                                           .getAdminConfigContext();
            Domain domain = (Domain) ctx.getRootConfigBean();
            Configs configs = domain.getConfigs();
            AvailabilityService avSvc = null;
            String targetName = null;

            if (configs != null) {
                boolean found = false;
                Config[] configArray = configs.getConfig();
                for (int i = 0; i < configArray.length; i++) {
                    avSvc = configArray[i].getAvailabilityService();
                    if (avSvc != null) {
                        ConvergedLoadBalancer clb = configArray[i].getAvailabilityService()
                                                                  .getConvergedLoadBalancer();

                        if (clb != null && clb.getName().equals(clbName)) {
                            // Issue 803, check if Cluster is running before deleting CLB
                            String configName = configArray[i].getName();
                            Cluster[] cluster = domain.getClusters().getCluster();
                            Server[] server = domain.getServers().getServer();
                            boolean isClusterConfig = false;
                            // In the case if clb is created in cluster config
                            for (int cnt=0; cnt < cluster.length; cnt++) {
                                String configRef = cluster[cnt].getConfigRef();
                                if (configRef.equals(configName)) {
                                    targetName = cluster[cnt].getName();
                                    isClusterConfig = true;
                                    if (isTargetRunning(targetName)) {
                                        String msg = _strMgr.getString("ClusterStopRequired");
                                        throw new MBeanException(new ConfigException(msg));
                                    }
                                }
                            }
                            // In the case if clb is created in server config
                            if (!isClusterConfig) {
                                for (int cnt=0; cnt < server.length; cnt++) {
                                    String configRef = server[cnt].getConfigRef();
                                    if (configRef.equals(configName)) {
                                        targetName = server[cnt].getName();
                                        if (isTargetRunning(targetName)) {
                                            String msg = _strMgr.getString("ServerStopRequired");
                                            throw new MBeanException(new ConfigException(msg));
                                        }
                                    }
                                }
                            }
                            found = true;
                            break;
                        }
                    }
                }
                if (!found) {
                    String msg = _strMgr.getString("ClbNameDoesNotExist", clbName);
                    throw new MBeanException(new ConfigException(msg));
                }
            }

            ConvergedLbConfigs clbConfigs = getConvergedLbConfigs();
            ConvergedLbConfig clbConfig = clbConfigs.getConvergedLbConfigByName(clbName + "_CLB_CONFIG");
            if (clbConfig != null) {
                _logger.log(Level.FINE, "Before deleting CLB Checking if it contains cluster references");
                ConvergedLbClusterRef[] clbClusterRefs = clbConfig.getConvergedLbClusterRef();
                if (clbClusterRefs.length != 0) {
                    String msg = _strMgr.getString("ClbContainsClusterRefs");
                    throw new MBeanException(new ConfigException(msg));
                }
                clbConfigs.removeConvergedLbConfig(clbConfig);
             }
             if (avSvc != null)
                avSvc.setConvergedLoadBalancer(null);
        } catch (Exception ce) {
            throw new MBeanException(ce);
        }
        return true;
    }
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

            HashSet names = new HashSet(0);

            if (configs != null) {
                Config[] configArray = configs.getConfig();
                for (int i = 0; i < configArray.length; i++) {
                    AvailabilityService avSvc = configArray[i].getAvailabilityService();
                    if (avSvc != null) {
                        ConvergedLoadBalancer clb = configArray[i].getAvailabilityService()
                                                                  .getConvergedLoadBalancer();

                        if (clb != null) {
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

                Configs configs = domain.getConfigs();
               
                if (configs != null) {
                    Config[] configArray = configs.getConfig();
                    for (int i = 0; i < configArray.length; i++) {
                        AvailabilityService avSvc = configArray[i].getAvailabilityService();
                        if (avSvc != null) {
                            ConvergedLoadBalancer clb = configArray[i].getAvailabilityService()
                                                                      .getConvergedLoadBalancer();

                            if (clb != null && clb.getName().equals(clbName))
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

                Configs configs = domain.getConfigs();
               
                if (configs != null) {
                    Config[] configArray = configs.getConfig();
                    for (int i = 0; i < configArray.length; i++) {
                        AvailabilityService avSvc = configArray[i].getAvailabilityService();
                        if (avSvc != null) {
                            ConvergedLoadBalancer clb = configArray[i].getAvailabilityService()
                                                                      .getConvergedLoadBalancer();

                            if (clb != null && clb.getName().equals(clbName))
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

            Domain domain = (Domain) ctx.getRootConfigBean();
            Configs configs = domain.getConfigs();
            if (configs != null) {
                Config[] configArray = configs.getConfig();
                for (int i = 0; i < configArray.length; i++) {
                    AvailabilityService avSvc = configArray[i].getAvailabilityService();
                    if (avSvc != null) {
                        ConvergedLoadBalancer clb = configArray[i].getAvailabilityService()
                                                                  .getConvergedLoadBalancer();
                        if (clb != null) {
                            if (clb.getConvergedLbConfigName().equals(clbConfigName))
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

            Domain domain = (Domain) ctx.getRootConfigBean();
            Configs configs = domain.getConfigs();
            if (configs != null) {
                Config[] configArray = configs.getConfig();
                for (int i = 0; i < configArray.length; i++) {
                    AvailabilityService avSvc = configArray[i].getAvailabilityService();
                    if (avSvc != null) {
                        ConvergedLoadBalancer clb = configArray[i].getAvailabilityService()
                                                                  .getConvergedLoadBalancer();
                        if (clb != null) {
                            if (clb.getConvergedLbConfigName().equals(clbConfigName)) {
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

            // check if provided clbName is valid
            if (configs != null) {
                boolean found = false;
                Config[] configArray = configs.getConfig();
                for (int i = 0; i < configArray.length; i++) {
                    AvailabilityService avSvc = configArray[i].getAvailabilityService();
                    if (avSvc != null) {
                        ConvergedLoadBalancer clb = configArray[i].getAvailabilityService()
                                                                  .getConvergedLoadBalancer();

                        if (clb != null && clb.getName().equals(clbName)) {
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

            // check if provided clbName is valid
            if (configs != null) {
                boolean found = false;
                Config[] configArray = configs.getConfig();
                for (int i = 0; i < configArray.length; i++) {
                    AvailabilityService avSvc = configArray[i].getAvailabilityService();
                    if (avSvc != null) {
                        ConvergedLoadBalancer clb = configArray[i].getAvailabilityService().getConvergedLoadBalancer();
                        if (clb != null && clb.getName().equals(clbName)) {
                            result.put("clbCfgName", clb.getConvergedLbConfigName());
                            result.put("cfgName", configArray[i].getName());
View Full Code Here

Examples of com.sun.enterprise.config.serverbeans.AvailabilityService

            //If REMOTE, the broker cluster instances already have
            //been configured with the right properties.
            return;
          }

          AvailabilityService as = server.getConfig().getAvailabilityService();
          if (as == null) {
            logFine("Availability Service is null. Not setting AvailabilityProperties.");
            return;
          }

          boolean useMasterBroker = true;
          if(as.getExtensionByType(JmsAvailability.class) != null && ! MASTERBROKER.equalsIgnoreCase(as.getExtensionByType(JmsAvailability.class).getConfigStoreType()))
            useMasterBroker = false;

          //jmsService.getUseMasterBroker() != null ? Boolean.valueOf(jmsService.getUseMasterBroker()) :true;
          boolean isJmsAvailabilityEnabled = this.isJMSAvailabilityOn(as);

          logFine("Setting AvailabilityProperties .. ");
          if (!useMasterBroker || isJmsAvailabilityEnabled) {
            // For conventional cluster of peer brokers and Enhanced Broker Cluster.
            ConnectorDescriptor cd = getDescriptor();
            String clusterName = getMQClusterName();
            ConnectorConfigProperty  envProp1 = new ConnectorConfigProperty (
                        CLUSTERID , clusterName,"Cluster Id",
                        "java.lang.String");
            setProperty(cd, envProp1);

            if(brokerInstanceName == null) {
                brokerInstanceName = getBrokerInstanceName(jmsService);
            }
            ConnectorConfigProperty  envProp2 = new ConnectorConfigProperty (
                        BROKERID , brokerInstanceName,"Broker Id",
                        "java.lang.String");
            setProperty(cd, envProp2);

            //Only if JMS availability is true - Enhanced Broker Cluster only.
            if (isJmsAvailabilityEnabled) {
              //Set HARequired as true - irrespective of whether it is REMOTE or
              //LOCAL
              ConnectorConfigProperty  envProp3 = new ConnectorConfigProperty (
                          HAREQUIRED , "true","HA Required",
                          "java.lang.String");
              setProperty(cd, envProp3);
               /* The broker has a property to control whether
               * it starts in HA mode or not and that's represented on
               * the RA by BrokerEnableHA.
               * On the MQ Client connection side it is HARequired -
               * this does not control the broker, it just is a client
               * side requirement.
               * So for AS EE, if BrokerType is LOCAL or EMBEDDED,
               * and AS HA is enabled for JMS then both these must be
               * set to true. */

              ConnectorConfigProperty  envProp4 = new ConnectorConfigProperty (
                          BROKERENABLEHA , "true",
                          "BrokerEnableHA flag","java.lang.Boolean");
              setProperty(cd, envProp4);

              String nodeHostName = domain.getNodeNamed(server.getNodeRef()).getNodeHost();
              if (nodeHostName != null) {
                ConnectorConfigProperty  envProp5 = new ConnectorConfigProperty (
                            BROKERBINDADDRESS , nodeHostName,
                            "Broker Bind Address","java.lang.String");
                setProperty(cd, envProp5);
              }
              loadDBProperties(as.getExtensionByType(JmsAvailability.class), ClusterMode.ENHANCED);
            } else {
              //  Conventional cluster of peer brokers
              JmsAvailability jmsAvailability = as.getExtensionByType(JmsAvailability.class);
              if ("jdbc".equals(jmsAvailability.getMessageStoreType()))
                loadDBProperties(jmsAvailability, ClusterMode.ENHANCED);
              loadDBProperties(jmsAvailability, ClusterMode.CONVENTIONAL_OF_PEER_BROKERS);
            }




            /*
            ConnectorConfigProperty  envProp4 = new ConnectorConfigProperty  (
                            DBTYPE , DBTYPE_HADB,"DBType",
                            "java.lang.String");
            setProperty(cd, envProp4);



            * The broker has a property to control whether
            * it starts in HA mode or not and that's represented on
            * the RA by BrokerEnableHA.
            * On the MQ Client connection side it is HARequired -
            * this does not control the broker, it just is a client
            * side requirement.
            * So for AS EE, if BrokerType is LOCAL or EMBEDDED,
            * and AS HA is enabled for JMS then both these must be
            * set to true.

            ConnectorConfigProperty  envProp5 = new ConnectorConfigProperty  (
                        BROKERENABLEHA , "true",
                        "BrokerEnableHA flag","java.lang.Boolean");
            setProperty(cd, envProp5);

            String nodeHostName = domain.getNodeNamed(server.getNode()).getNodeHost();
            if (nodeHostName != null)  {
              ConnectorConfigProperty  envProp6 = new ConnectorConfigProperty  (
                          BROKERBINDADDRESS , nodeHostName,
                          "Broker Bind Address","java.lang.String");
              setProperty(cd, envProp6);
            }
            //get pool name
            String poolJNDIName = as.getJmsAvailability().getMqStorePoolName();
            //If no MQ store pool name is specified, use default poolname
            //XXX: default pool name is jdbc/hastore but asadmin
            //configure-ha-cluster creates a resource called
            //"jdbc/<asclustername>-hastore" which needs to be used.
            if (poolJNDIName == null || poolJNDIName =="" ) {
              //get Web container's HA store's pool name
              poolJNDIName = as.getWebContainerAvailability().
                                getHttpSessionStorePoolName();
              logFine("HTTP Session store pool jndi name " +
                         "is " + poolJNDIName);
            }
            //XXX: request HADB team mq-store-pool name to be
            //populated as part of configure-ha-cluster

            JdbcConnectionPool jdbcConPool = getJDBCConnectionPoolInfo(
                                                poolJNDIName);
            //DBProps: compute values from pool object
            String userName = getPropertyFromPool(jdbcConPool, DUSERNAME);
            logFine("HA username is " + userName);

            String password = getPropertyFromPool(jdbcConPool, DPASSWORD);
            logFine("HA Password is " + password);

            String driverClass = jdbcConPool.getDatasourceClassname();
            logFine("HA driverclass" + driverClass);

            dbProps = new Properties();
            dbProps.setProperty(DB_HADB_USER, userName);
            dbProps.setProperty(DB_HADB_PASSWORD, password);
            dbProps.setProperty(DB_HADB_DRIVERCLASS, driverClass);

            //DSProps: compute values from pool object
            String serverList = getPropertyFromPool(jdbcConPool, DSERVERLIST);
            logFine("HADB server list is " + serverList);
            dsProps = new Properties();

            if (serverList != null) {
                dsProps.setProperty(DS_HADB_SERVERLIST, serverList);
            } else {
                _logger.warning("ajra.incorrect_hadb_server_list");
            }

            //set all other properties in dsProps as well.
            Properties p = getDSPropertiesFromThePool(jdbcConPool);
            Iterator iterator = p.keySet().iterator();
            while (iterator.hasNext()) {
                String key = (String) iterator.next();
                String val = (String)p.get(key);
                dsProps.setProperty(key, val);
            }*/
          } else {
            // Conventional cluster with master broker.
            if ("jdbc".equals(as.getExtensionByType(JmsAvailability.class).getMessageStoreType()))
              loadDBProperties(as.getExtensionByType(JmsAvailability.class), ClusterMode.CONVENTIONAL_WITH_MASTER_BROKER);
          }
        } catch (Exception e) {
            ConnectorRuntimeException crex = new ConnectorRuntimeException(e.getMessage());
            throw (ConnectorRuntimeException)crex.initCause(e);
        }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.