List of usage examples for org.apache.commons.lang BooleanUtils isNotTrue
public static boolean isNotTrue(Boolean bool)
Checks if a Boolean
value is not true
, handling null
by returning true
.
BooleanUtils.isNotTrue(Boolean.TRUE) = false BooleanUtils.isNotTrue(Boolean.FALSE) = true BooleanUtils.isNotTrue(null) = true
From source file:jp.primecloud.auto.service.impl.LoadBalancerServiceImpl.java
protected boolean checkAssociate(LoadBalancer loadBalancer, Instance instance, List<LoadBalancer> allLoadBalancers, List<LoadBalancerInstance> allLbInstances) { Map<Long, LoadBalancer> allLoadBalancerMap = new HashMap<Long, LoadBalancer>(); for (LoadBalancer loadBalancer2 : allLoadBalancers) { allLoadBalancerMap.put(loadBalancer2.getLoadBalancerNo(), loadBalancer2); }/* www . j ava2s. c o m*/ // AWS??? String type = loadBalancer.getType(); if (PCCConstant.LOAD_BALANCER_ELB.equals(type)) { // ?????????? if (!loadBalancer.getPlatformNo().equals(instance.getPlatformNo())) { return false; } // ?AWS?????????????? for (LoadBalancerInstance lbInstance : allLbInstances) { if (!instance.getInstanceNo().equals(lbInstance.getInstanceNo())) { continue; } // ??AWS??????????? if (loadBalancer.getLoadBalancerNo().equals(lbInstance.getLoadBalancerNo())) { continue; } // ????????????? if (BooleanUtils.isNotTrue(lbInstance.getEnabled()) && LoadBalancerInstanceStatus .fromStatus(lbInstance.getStatus()) == LoadBalancerInstanceStatus.STOPPED) { continue; } LoadBalancer loadBalancer2 = allLoadBalancerMap.get(lbInstance.getLoadBalancerNo()); String type2 = loadBalancer2.getType(); if (PCCConstant.LOAD_BALANCER_ELB.equals(type2) || PCCConstant.LOAD_BALANCER_CLOUDSTACK.equals(type2)) { // ?AWS?????????????? return false; } } //VPC????? PlatformAws platformAws = platformAwsDao.read(loadBalancer.getPlatformNo()); if (platformAws.getVpc()) { AwsLoadBalancer awsLoadBalancer = awsLoadBalancerDao.read(loadBalancer.getLoadBalancerNo()); AwsInstance awsInstance = awsInstanceDao.read(instance.getInstanceNo()); if (StringUtils.isEmpty(awsLoadBalancer.getAvailabilityZone())) { //???????(??????)????(???) return false; } else { //?????(????) List<String> zones = new ArrayList<String>(); for (String zone : awsLoadBalancer.getAvailabilityZone().split(",")) { zones.add(zone.trim()); } if (zones.contains(awsInstance.getAvailabilityZone()) == false) { //??????(??????????)???? return false; } } } } return true; }
From source file:jp.primecloud.auto.process.puppet.PuppetComponentProcess.java
protected void startVmwareDisk(Long componentNo, Long instanceNo) { // SCSI ID??//from w w w . j a v a2 s .c o m Integer scsiId = getVmwareDiskScsiId(); if (scsiId == null) { // SCSI ID???????? return; } // ?? VmwareDisk vmwareDisk = vmwareDiskDao.readByComponentNoAndInstanceNo(componentNo, instanceNo); // ??????? if (vmwareDisk == null) { // ?? Integer diskSize = null; ComponentConfig diskSizeConfig = componentConfigDao.readByComponentNoAndConfigName(componentNo, ComponentConstants.CONFIG_NAME_DISK_SIZE); if (diskSizeConfig != null) { try { diskSize = Integer.valueOf(diskSizeConfig.getConfigValue()); } catch (NumberFormatException ignore) { } } if (diskSize == null) { // ???????? return; } Instance instance = instanceDao.read(instanceNo); vmwareDisk = new VmwareDisk(); vmwareDisk.setFarmNo(instance.getFarmNo()); vmwareDisk.setPlatformNo(instance.getPlatformNo()); vmwareDisk.setComponentNo(componentNo); vmwareDisk.setInstanceNo(instanceNo); vmwareDisk.setSize(diskSize); vmwareDisk.setScsiId(scsiId); vmwareDiskDao.create(vmwareDisk); } // ?????????SCSI ID????? else if (BooleanUtils.isNotTrue(vmwareDisk.getAttached()) && !scsiId.equals(vmwareDisk.getScsiId())) { vmwareDisk.setScsiId(scsiId); vmwareDiskDao.update(vmwareDisk); } // VmwareProcessClient?? VmwareProcessClient vmwareProcessClient = vmwareProcessClientFactory .createVmwareProcessClient(vmwareDisk.getPlatformNo()); try { // ?? vmwareDiskProcess.attachDisk(vmwareProcessClient, instanceNo, vmwareDisk.getDiskNo()); } finally { vmwareProcessClient.getVmwareClient().logout(); } }
From source file:jp.primecloud.auto.process.puppet.PuppetComponentProcess.java
protected void startVcloudDisk(Long componentNo, Long instanceNo) { // ??/* ww w.j a v a 2 s .c om*/ VcloudDisk vcloudDisk = null; List<VcloudDisk> vcloudDisks = vcloudDiskDao.readByComponentNo(componentNo); for (VcloudDisk tmpVcloudDisk : vcloudDisks) { if (tmpVcloudDisk.getInstanceNo().equals(instanceNo)) { vcloudDisk = tmpVcloudDisk; break; } } // ??????? if (vcloudDisk == null) { // ?? Integer diskSize = null; ComponentConfig diskSizeConfig = componentConfigDao.readByComponentNoAndConfigName(componentNo, ComponentConstants.CONFIG_NAME_DISK_SIZE); if (diskSizeConfig != null) { try { diskSize = Integer.valueOf(diskSizeConfig.getConfigValue()); } catch (NumberFormatException ignore) { } } if (diskSize == null) { // ???????? return; } Instance instance = instanceDao.read(instanceNo); vcloudDisk = new VcloudDisk(); vcloudDisk.setFarmNo(instance.getFarmNo()); vcloudDisk.setPlatformNo(instance.getPlatformNo()); vcloudDisk.setComponentNo(componentNo); vcloudDisk.setInstanceNo(instanceNo); vcloudDisk.setSize(diskSize); //UNIT NO?IaasGateWay??????????NULL? vcloudDisk.setUnitNo(null); vcloudDisk.setAttached(false); //?????????false vcloudDisk.setDataDisk(false); vcloudDiskDao.create(vcloudDisk); } // ????????? UNIT NO ????????NULL?? // IaasGateWay??UNIT NO?? else if (BooleanUtils.isNotTrue(vcloudDisk.getAttached())) { vcloudDisk.setUnitNo(null); vcloudDiskDao.update(vcloudDisk); } // IaasGatewayWrapper?? Farm farm = farmDao.read(vcloudDisk.getFarmNo()); IaasGatewayWrapper gateway = iaasGatewayFactory.createIaasGateway(farm.getUserNo(), vcloudDisk.getPlatformNo()); // ()?? gateway.startVolume(instanceNo, vcloudDisk.getDiskNo()); }
From source file:jp.primecloud.auto.service.impl.InstanceServiceImpl.java
private void makeVcloudData(Farm farm, Long instanceNo, String instanceName, String instanceType, PlatformVcloud platformVcloud) { // VCloud??/* ww w .j a v a 2s. c o m*/ VcloudInstance vcloudInstance = new VcloudInstance(); vcloudInstance.setInstanceNo(instanceNo); //VM?? //????????????NULL //(VCloud???????????) vcloudInstance.setVmName(null); // //??????? List<VcloudKeyPair> vcloudKeyPairs = vcloudKeyPairDao.readByUserNoAndPlatformNo(farm.getUserNo(), platformVcloud.getPlatformNo()); Long keyPairNo = vcloudKeyPairs.get(0).getKeyNo(); vcloudInstance.setKeyPairNo(keyPairNo); // List<PlatformVcloudStorageType> storageTypes = platformVcloudStorageTypeDao .readByPlatformNo(platformVcloud.getPlatformNo()); Collections.sort(storageTypes, Comparators.COMPARATOR_PLATFORM_VCLOUD_STORAGE_TYPE); vcloudInstance.setStorageTypeNo(storageTypes.get(0).getStorageTypeNo()); // vcloudInstance.setInstanceType(instanceType); //VCLOUD_INSTANCE? vcloudInstanceDao.create(vcloudInstance); //? //???PCC?????? //IaasGateWay???PCC???? //VCLOUD_INSTANCE_NETWORKPCC??? Boolean showPublicIp = BooleanUtils.toBooleanObject(Config.getProperty("ui.showPublicIp")); List<NetworkDto> networkDtos = iaasDescribeService.getNetworks(farm.getUserNo(), platformVcloud.getPlatformNo()); for (int i = 0; i < networkDtos.size(); i++) { NetworkDto networkDto = networkDtos.get(i); //PCC?? ???? //???IaasGateWay?????NULL //IP???????IaasGateWay?????NULL //PCC?????????1??? if (networkDto.isPcc() || (!networkDto.isPcc() && StringUtils.equals(networkDto.getNetworkName(), platformVcloud.getDefNetwork()))) { VcloudInstanceNetwork vcloudInstanceNetwork = new VcloudInstanceNetwork(); vcloudInstanceNetwork.setPlatformNo(platformVcloud.getPlatformNo()); vcloudInstanceNetwork.setInstanceNo(instanceNo); vcloudInstanceNetwork.setFarmNo(farm.getFarmNo()); vcloudInstanceNetwork.setNetworkName(networkDto.getNetworkName()); vcloudInstanceNetwork.setNetworkIndex(null); vcloudInstanceNetwork.setIpMode("POOL"); vcloudInstanceNetwork.setIpAddress(null); //config.properties?showPublicIp?= true PCC?? //config.properties?showPublicIp?= false ?(?)? if (networkDto.isPcc()) { vcloudInstanceNetwork.setIsPrimary(BooleanUtils.isTrue(showPublicIp)); } else if (StringUtils.equals(networkDto.getNetworkName(), platformVcloud.getDefNetwork())) { vcloudInstanceNetwork.setIsPrimary(BooleanUtils.isNotTrue(showPublicIp)); } //VCLOUD_INSTANCE_NETWORK? vcloudInstanceNetworkDao.create(vcloudInstanceNetwork); } } }
From source file:jp.primecloud.auto.service.impl.LoadBalancerServiceImpl.java
/** * {@inheritDoc}/*from w w w . ja v a 2 s . co m*/ */ @Override public void enableInstances(Long loadBalancerNo, List<Long> instanceNos) { // ? if (loadBalancerNo == null) { throw new AutoApplicationException("ECOMMON-000003", "loadBalancerNo"); } if (instanceNos == null) { throw new AutoApplicationException("ECOMMON-000003", "instanceNos"); } // ??? LoadBalancer loadBalancer = loadBalancerDao.read(loadBalancerNo); if (loadBalancer == null) { // ?????? throw new AutoApplicationException("ESERVICE-000603", loadBalancerNo); } // ??? List<Long> tmpInstanceNos = new ArrayList<Long>(); for (Long instanceNo : instanceNos) { if (!tmpInstanceNos.contains(instanceNo)) { tmpInstanceNos.add(instanceNo); } } instanceNos = tmpInstanceNos; // ?? List<Instance> instances = instanceDao.readInInstanceNos(instanceNos); if (instanceNos.size() != instances.size()) { tmpInstanceNos = new ArrayList<Long>(instanceNos); for (Instance instance : instances) { tmpInstanceNos.remove(instance.getInstanceNo()); } if (tmpInstanceNos.size() > 0) { throw new AutoApplicationException("ESERVICE-000621", tmpInstanceNos.iterator().next()); } } // ???? List<ComponentInstance> componentInstances = componentInstanceDao .readByComponentNo(loadBalancer.getComponentNo()); for (Instance instance : instances) { boolean contain = false; for (ComponentInstance componentInstance : componentInstances) { if (BooleanUtils.isNotTrue(componentInstance.getAssociate())) { continue; } if (componentInstance.getInstanceNo().equals(instance.getInstanceNo())) { contain = true; break; } } if (!contain) { // ??????????? Component component = componentDao.read(loadBalancer.getComponentNo()); throw new AutoApplicationException("ESERVICE-000622", instance.getInstanceName(), component.getComponentName()); } } // AWS????? // if ("aws".equals(loadBalancer.getType()) || "cloudstack".equals(loadBalancer.getType())) { if (PCCConstant.LOAD_BALANCER_ELB.equals(loadBalancer.getType())) { // ? Long platformNo = loadBalancer.getPlatformNo(); for (Instance instance : instances) { if (!platformNo.equals(instance.getPlatformNo())) { throw new AutoApplicationException("ESERVICE-000623", instance.getInstanceName()); } } // ?AWS?????????????? List<LoadBalancerInstance> lbInstances = loadBalancerInstanceDao.readInInstanceNos(instanceNos); Set<Long> otherLoadBalancerNos = new HashSet<Long>(); for (LoadBalancerInstance lbInstance : lbInstances) { if (!loadBalancerNo.equals(lbInstance.getLoadBalancerNo())) { otherLoadBalancerNos.add(lbInstance.getLoadBalancerNo()); } } List<LoadBalancer> otherLoadBalancers = loadBalancerDao.readInLoadBalancerNos(otherLoadBalancerNos); for (LoadBalancer otherLoadBalancer : otherLoadBalancers) { if (PCCConstant.LOAD_BALANCER_ELB.equals(otherLoadBalancer.getType())) { // ?AWS????????? for (LoadBalancerInstance lbInstance : lbInstances) { if (otherLoadBalancer.getLoadBalancerNo().equals(otherLoadBalancer.getLoadBalancerNo())) { for (Instance instance : instances) { if (instance.getInstanceNo().equals(lbInstance.getInstanceNo())) { throw new AutoApplicationException("ESERVICE-000624", instance.getInstanceName()); } } } } } } // //VPC?????????????????? // PlatformAws platformAws = platformAwsDao.read(platformNo); // if (platformAws.getVpc()) { // AwsLoadBalancer awsLoadBalancer = awsLoadBalancerDao.read(loadBalancerNo); // List<String> zones = new ArrayList<String>(); // if (StringUtils.isEmpty(awsLoadBalancer.getAvailabilityZone())) { // //ELB?(?)??????????????? // throw new AutoApplicationException("ESERVICE-000630", loadBalancer.getLoadBalancerName()); // } // for (String zone: awsLoadBalancer.getAvailabilityZone().split(",")) { // zones.add(zone.trim()); // } // for (Instance instance : instances) { // AwsInstance awsInstance = awsInstanceDao.read(instance.getInstanceNo()); // if (zones.contains(awsInstance.getAvailabilityZone()) == false) { // //???????????? // throw new AutoApplicationException("ESERVICE-000629", instance.getInstanceName()); // } // } // } } // ??? List<LoadBalancerInstance> lbInstances = loadBalancerInstanceDao.readByLoadBalancerNo(loadBalancerNo); Map<Long, LoadBalancerInstance> lbInstanceMap = new HashMap<Long, LoadBalancerInstance>(); for (LoadBalancerInstance lbInstance : lbInstances) { lbInstanceMap.put(lbInstance.getInstanceNo(), lbInstance); } // ?? for (Instance instance : instances) { // ??????? LoadBalancerInstance lbInstance = lbInstanceMap.remove(instance.getInstanceNo()); // ???????? if (lbInstance == null) { lbInstance = new LoadBalancerInstance(); lbInstance.setLoadBalancerNo(loadBalancerNo); lbInstance.setInstanceNo(instance.getInstanceNo()); lbInstance.setEnabled(true); lbInstance.setStatus(LoadBalancerInstanceStatus.STOPPED.toString()); loadBalancerInstanceDao.create(lbInstance); } // ?????? else { if (BooleanUtils.isNotTrue(lbInstance.getEnabled())) { lbInstance.setEnabled(true); loadBalancerInstanceDao.update(lbInstance); } } } // ??? if (BooleanUtils.isNotTrue(loadBalancer.getConfigure())) { loadBalancer.setConfigure(true); loadBalancerDao.update(loadBalancer); } // ?? Farm farm = farmDao.read(loadBalancer.getFarmNo()); if (BooleanUtils.isNotTrue(farm.getScheduled())) { farm.setScheduled(true); farmDao.update(farm); } }
From source file:jp.primecloud.auto.service.impl.LoadBalancerServiceImpl.java
/** * {@inheritDoc}//w w w . j av a 2 s . c o m */ @Override public void disableInstances(Long loadBalancerNo, List<Long> instanceNos) { // ? if (loadBalancerNo == null) { throw new AutoApplicationException("ECOMMON-000003", "loadBalancerNo"); } if (instanceNos == null) { throw new AutoApplicationException("ECOMMON-000003", "instanceNos"); } // ??? LoadBalancer loadBalancer = loadBalancerDao.read(loadBalancerNo); if (loadBalancer == null) { // ?????? throw new AutoApplicationException("ESERVICE-000603", loadBalancerNo); } // ??? List<Long> tmpInstanceNos = new ArrayList<Long>(); for (Long instanceNo : instanceNos) { if (!tmpInstanceNos.contains(instanceNo)) { tmpInstanceNos.add(instanceNo); } } instanceNos = tmpInstanceNos; // ?? List<Instance> instances = instanceDao.readInInstanceNos(instanceNos); if (instanceNos.size() != instances.size()) { tmpInstanceNos = new ArrayList<Long>(instanceNos); for (Instance instance : instances) { tmpInstanceNos.remove(instance.getInstanceNo()); } if (tmpInstanceNos.size() > 0) { throw new AutoApplicationException("ESERVICE-000621", tmpInstanceNos.iterator().next()); } } // ???? List<ComponentInstance> componentInstances = componentInstanceDao .readByComponentNo(loadBalancer.getComponentNo()); for (Instance instance : instances) { boolean contain = false; for (ComponentInstance componentInstance : componentInstances) { if (BooleanUtils.isNotTrue(componentInstance.getAssociate())) { continue; } if (componentInstance.getInstanceNo().equals(instance.getInstanceNo())) { contain = true; break; } } if (!contain) { // ??????????? Component component = componentDao.read(loadBalancer.getComponentNo()); throw new AutoApplicationException("ESERVICE-000622", instance.getInstanceName(), component.getComponentName()); } } // ??? List<LoadBalancerInstance> lbInstances = loadBalancerInstanceDao.readByLoadBalancerNo(loadBalancerNo); Map<Long, LoadBalancerInstance> lbInstanceMap = new HashMap<Long, LoadBalancerInstance>(); for (LoadBalancerInstance lbInstance : lbInstances) { lbInstanceMap.put(lbInstance.getInstanceNo(), lbInstance); } // ?? for (Instance instance : instances) { // ??????? LoadBalancerInstance lbInstance = lbInstanceMap.remove(instance.getInstanceNo()); if (lbInstance == null) { // ?????? continue; } // ???? if (BooleanUtils.isTrue(lbInstance.getEnabled())) { lbInstance.setEnabled(false); loadBalancerInstanceDao.update(lbInstance); } } // ??? if (BooleanUtils.isNotTrue(loadBalancer.getConfigure())) { loadBalancer.setConfigure(true); loadBalancerDao.update(loadBalancer); } // ?? Farm farm = farmDao.read(loadBalancer.getFarmNo()); if (BooleanUtils.isNotTrue(farm.getScheduled())) { farm.setScheduled(true); farmDao.update(farm); } }
From source file:jp.primecloud.auto.service.impl.InstanceServiceImpl.java
/** * {@inheritDoc}/*w w w . java2s . c o m*/ */ @Override public void updateVmwareInstance(Long instanceNo, String instanceName, String comment, String instanceType, String computeResource, String resourcePool, Long keyPairNo, VmwareAddressDto vmwareAddressDto) { // ? updateInstance(instanceNo, instanceName, comment); // ? if (instanceNo == null) { throw new AutoApplicationException("ECOMMON-000003", "instanceNo"); } if (instanceType == null || instanceType.length() == 0) { throw new AutoApplicationException("ECOMMON-000003", "instanceType"); } if (computeResource == null || computeResource.length() == 0) { throw new AutoApplicationException("ECOMMON-000003", "computeResource"); } if (keyPairNo == null) { throw new AutoApplicationException("ECOMMON-000003", "keyPairNo"); } // ?? Instance instance = instanceDao.read(instanceNo); if (instance == null) { throw new AutoApplicationException("ESERVICE-000403", instanceNo); } // ?? Platform platform = platformDao.read(instance.getPlatformNo()); if (PCCConstant.PLATFORM_TYPE_VMWARE.equals(platform.getPlatformType()) == false) { throw new AutoApplicationException("ESERVICE-000408", instance.getInstanceName()); } // ?????? VmwareInstance vmwareInstance = vmwareInstanceDao.read(instanceNo); VmwareAddress vmwareAddress = vmwareAddressDao.readByInstanceNo(instanceNo); if (InstanceStatus.fromStatus(instance.getStatus()) != InstanceStatus.STOPPED) { // ?????????????????? if (!StringUtils.equals(vmwareInstance.getInstanceType(), instanceType)) { throw new AutoApplicationException("ESERVICE-000407", instance.getInstanceName()); } if (!StringUtils.equals(vmwareInstance.getComputeResource(), computeResource)) { throw new AutoApplicationException("ESERVICE-000407", instance.getInstanceName()); } if (StringUtils.isEmpty(vmwareInstance.getResourcePool()) ? StringUtils.isNotEmpty(resourcePool) : !StringUtils.equals(vmwareInstance.getResourcePool(), resourcePool)) { throw new AutoApplicationException("ESERVICE-000407", instance.getInstanceName()); } if (!keyPairNo.equals(vmwareInstance.getKeyPairNo())) { throw new AutoApplicationException("ESERVICE-000407", instance.getInstanceName()); } if (vmwareAddress == null || BooleanUtils.isNotTrue(vmwareAddress.getEnabled())) { if (vmwareAddressDto != null) { throw new AutoApplicationException("ESERVICE-000407", instance.getInstanceName()); } } else { if (vmwareAddressDto == null) { throw new AutoApplicationException("ESERVICE-000407", instance.getInstanceName()); } else if (!StringUtils.equals(vmwareAddress.getIpAddress(), vmwareAddressDto.getIpAddress()) || !StringUtils.equals(vmwareAddress.getSubnetMask(), vmwareAddressDto.getSubnetMask()) || !StringUtils.equals(vmwareAddress.getDefaultGateway(), vmwareAddressDto.getDefaultGateway())) { throw new AutoApplicationException("ESERVICE-000407", instance.getInstanceName()); } } } // VMware? vmwareInstance.setInstanceType(instanceType); vmwareInstance.setComputeResource(computeResource); vmwareInstance.setResourcePool(resourcePool); vmwareInstance.setKeyPairNo(keyPairNo); vmwareInstanceDao.update(vmwareInstance); Farm farm = farmDao.read(instance.getFarmNo()); // VmwareAddress? if (vmwareAddress == null) { if (vmwareAddressDto != null) { vmwareAddress = new VmwareAddress(); vmwareAddress.setPlatformNo(instance.getPlatformNo()); vmwareAddress.setIpAddress(vmwareAddressDto.getIpAddress()); vmwareAddress.setSubnetMask(vmwareAddressDto.getSubnetMask()); vmwareAddress.setDefaultGateway(vmwareAddressDto.getDefaultGateway()); vmwareAddress.setUserNo(farm.getUserNo()); vmwareAddress.setInstanceNo(instanceNo); vmwareAddress.setEnabled(true); vmwareAddress.setAssociated(false); vmwareAddressDao.create(vmwareAddress); } } else { if (vmwareAddressDto == null) { vmwareAddress.setEnabled(false); } else { boolean change = false; if (!StringUtils.equals(vmwareAddress.getIpAddress(), vmwareAddressDto.getIpAddress()) || !StringUtils.equals(vmwareAddress.getSubnetMask(), vmwareAddressDto.getSubnetMask()) || !StringUtils.equals(vmwareAddress.getDefaultGateway(), vmwareAddressDto.getDefaultGateway())) { change = true; } vmwareAddress.setIpAddress(vmwareAddressDto.getIpAddress()); vmwareAddress.setSubnetMask(vmwareAddressDto.getSubnetMask()); vmwareAddress.setDefaultGateway(vmwareAddressDto.getDefaultGateway()); vmwareAddress.setEnabled(true); if (change) { vmwareAddress.setAssociated(false); } } vmwareAddressDao.update(vmwareAddress); } // eventLogger.log(EventLogLevel.INFO, farm.getFarmNo(), farm.getFarmName(), null, null, instanceNo, instanceName, "InstanceUpdate", instanceType, instance.getPlatformNo(), null); }
From source file:jp.primecloud.auto.service.impl.InstanceServiceImpl.java
/** * {@inheritDoc}/*from w ww. j a v a2 s.co m*/ */ @Override public void associateComponents(Long instanceNo, List<Long> componentNos) { // ? if (instanceNo == null) { throw new AutoApplicationException("ECOMMON-000003", "instanceNo"); } if (componentNos == null) { throw new AutoApplicationException("ECOMMON-000003", "componentNos"); } // ?? Instance instance = instanceDao.read(instanceNo); if (instance == null) { throw new AutoApplicationException("ESERVICE-000403", instanceNo); } // ????? List<Long> tmpComponentNos = new ArrayList<Long>(); for (Long componentNo : componentNos) { if (!tmpComponentNos.contains(componentNo)) { tmpComponentNos.add(componentNo); } } componentNos = tmpComponentNos; // ???? List<Component> components = componentDao.readInComponentNos(componentNos); if (componentNos.size() != components.size()) { for (Component component : components) { componentNos.remove(component.getComponentNo()); } if (componentNos.size() > 0) { throw new AutoApplicationException("ESERVICE-000409", componentNos.iterator().next()); } } // MySQL?Master??????? List<InstanceConfig> instanceConfigs = instanceConfigDao.readByInstanceNo(instanceNo); for (InstanceConfig instanceConfig : instanceConfigs) { if (MySQLConstants.CONFIG_NAME_MASTER_INSTANCE_NO.equals(instanceConfig.getConfigName())) { if (StringUtils.isEmpty(instanceConfig.getConfigValue()) && !componentNos.contains(instanceConfig.getComponentNo())) { // MySQL?Master????????? throw new AutoApplicationException("ESERVICE-000414", instance.getInstanceName()); } } } // ???? List<Component> allComponents = componentDao.readByFarmNo(instance.getFarmNo()); List<ComponentInstance> componentInstances = componentInstanceDao.readByInstanceNo(instanceNo); for (Component component : allComponents) { // ????????? ComponentInstance componentInstance = null; for (ComponentInstance tmpComponentInstance : componentInstances) { if (component.getComponentNo().equals(tmpComponentInstance.getComponentNo())) { componentInstance = tmpComponentInstance; break; } } if (componentNos.contains(component.getComponentNo())) { // ?????? if (componentInstance == null) { // ???????? componentInstance = new ComponentInstance(); componentInstance.setComponentNo(component.getComponentNo()); componentInstance.setInstanceNo(instanceNo); componentInstance.setAssociate(true); componentInstance.setEnabled(false); componentInstance.setStatus(ComponentInstanceStatus.STOPPED.toString()); componentInstanceDao.create(componentInstance); } else { // ??????? if (BooleanUtils.isNotTrue(componentInstance.getAssociate())) { componentInstance.setAssociate(true); componentInstanceDao.update(componentInstance); } } } else { // ???????? if (componentInstance != null) { // ???? ComponentInstanceStatus status = ComponentInstanceStatus .fromStatus(componentInstance.getStatus()); if (status == ComponentInstanceStatus.STOPPED) { // Zabbix?? if (zabbixInstanceDao.countByInstanceNo(componentInstance.getInstanceNo()) > 0) { zabbixHostProcess.removeTemplate(componentInstance.getInstanceNo(), componentInstance.getComponentNo()); } /****************************************************************** * ??????? * ??VCLOUDUSiZE????? ******************************************************************/ List<VcloudDisk> vdisks = vcloudDiskDao.readByInstanceNo(instance.getInstanceNo()); for (VcloudDisk disk : vdisks) { if (component.getComponentNo().equals(disk.getComponentNo())) { //componentNo???????? Farm farm = farmDao.read(instance.getFarmNo()); IaasGatewayWrapper gateway = iaasGatewayFactory.createIaasGateway(farm.getUserNo(), instance.getPlatformNo()); try { gateway.deleteVolume(String.valueOf(disk.getDiskNo())); } catch (AutoException ignore) { // ?????????????? } // vcloudDiskDao.delete(disk); } } // ??????????? componentInstanceDao.delete(componentInstance); } else { // ?? if (BooleanUtils.isTrue(componentInstance.getAssociate())) { componentInstance.setAssociate(false); componentInstanceDao.update(componentInstance); } } } } } for (Component component : components) { ComponentType componentType = componentTypeDao.read(component.getComponentTypeNo()); // MySQL?????Master/Slave? if (MySQLConstants.COMPONENT_TYPE_NAME.equals(componentType.getComponentTypeName())) { InstanceConfig instanceConfig = instanceConfigDao.readByInstanceNoAndComponentNoAndConfigName( instanceNo, component.getComponentNo(), MySQLConstants.CONFIG_NAME_MASTER_INSTANCE_NO); if (instanceConfig == null) { // Master?? Long masterInstanceNo = null; List<InstanceConfig> configs = instanceConfigDao.readByComponentNo(component.getComponentNo()); for (InstanceConfig config : configs) { if (MySQLConstants.CONFIG_NAME_MASTER_INSTANCE_NO.equals(config.getConfigName())) { if (StringUtils.isEmpty(config.getConfigValue())) { masterInstanceNo = config.getInstanceNo(); break; } } } // Master???????Master????Slave?? instanceConfig = new InstanceConfig(); instanceConfig.setInstanceNo(instanceNo); instanceConfig.setComponentNo(component.getComponentNo()); instanceConfig.setConfigName(MySQLConstants.CONFIG_NAME_MASTER_INSTANCE_NO); if (masterInstanceNo == null) { instanceConfig.setConfigValue(null); } else { instanceConfig.setConfigValue(masterInstanceNo.toString()); } instanceConfigDao.create(instanceConfig); } } } // StringBuilder names = new StringBuilder(); for (Component component : components) { names.append(component.getComponentName()).append(","); } if (names.length() > 0) { names.deleteCharAt(names.length() - 1); } Farm farm = farmDao.read(instance.getFarmNo()); eventLogger.log(EventLogLevel.DEBUG, farm.getFarmNo(), farm.getFarmName(), null, null, instanceNo, instance.getInstanceName(), "InstanceAssociateComponent", null, instance.getPlatformNo(), new Object[] { names.toString() }); }
From source file:jp.primecloud.auto.service.impl.InstanceServiceImpl.java
/** * {@inheritDoc}//from w ww . j a v a 2s. c o m */ @Override public void enableZabbixMonitoring(Long instanceNo) { // ? if (instanceNo == null) { throw new AutoApplicationException("ECOMMON-000003", "instanceNo"); } // ?? Instance instance = instanceDao.read(instanceNo); if (instance == null) { // ????? throw new AutoApplicationException("ESERVICE-000403", instanceNo); } // ZABBIX_INSTANCE?? ZabbixInstance zabbixInstance = zabbixInstanceDao.read(instanceNo); if (zabbixInstance == null) { // ????? throw new AutoApplicationException("ESERVICE-000422", instanceNo); } // Zabbix(config.properties?zabbix.useZabbix)?? Boolean useZabbix = BooleanUtils.toBooleanObject(Config.getProperty("zabbix.useZabbix")); if (BooleanUtils.isNotTrue(useZabbix)) { // Zabbix?true? throw new AutoApplicationException("ESERVICE-000423", instanceNo); } // ?OS?? InstanceStatus instanceStatus = getInstanceStatus(instance); if (instanceStatus != InstanceStatus.RUNNING) { // ?OS?RUNNING? throw new AutoApplicationException("ESERVICE-000424", instance.getInstanceName()); } // Zabbix?? ZabbixInstanceStatus zabbixInstanceStatus = ZabbixInstanceStatus.fromStatus(zabbixInstance.getStatus()); if (zabbixInstanceStatus != ZabbixInstanceStatus.UN_MONITORING) { // Zabbix??UN_MONITORING? throw new AutoApplicationException("ESERVICE-000425", instance.getInstanceName()); } // Zabbix zabbixHostProcess.startHost(instanceNo); }
From source file:jp.primecloud.auto.service.impl.InstanceServiceImpl.java
/** * {@inheritDoc}//w w w . j av a 2s. co m */ @Override public void disableZabbixMonitoring(Long instanceNo) { // ? if (instanceNo == null) { throw new AutoApplicationException("ECOMMON-000003", "instanceNo"); } // ?? Instance instance = instanceDao.read(instanceNo); if (instance == null) { // ????? throw new AutoApplicationException("ESERVICE-000403", instanceNo); } // ZABBIX_INSTANCE?? ZabbixInstance zabbixInstance = zabbixInstanceDao.read(instanceNo); if (zabbixInstance == null) { // ????? throw new AutoApplicationException("ESERVICE-000422", instanceNo); } // Zabbix(config.properties?zabbix.useZabbix)?? Boolean useZabbix = BooleanUtils.toBooleanObject(Config.getProperty("zabbix.useZabbix")); if (BooleanUtils.isNotTrue(useZabbix)) { // Zabbix?true? throw new AutoApplicationException("ESERVICE-000423", instanceNo); } // ?OS?? InstanceStatus instanceStatus = getInstanceStatus(instance); if (instanceStatus != InstanceStatus.RUNNING) { // ?OS?RUNNING? throw new AutoApplicationException("ESERVICE-000426", instance.getInstanceName()); } // Zabbix?? ZabbixInstanceStatus zabbixInstanceStatus = ZabbixInstanceStatus.fromStatus(zabbixInstance.getStatus()); if (zabbixInstanceStatus != ZabbixInstanceStatus.MONITORING) { // Zabbix??MONITORING? throw new AutoApplicationException("ESERVICE-000427", instance.getInstanceName()); } // Zabbix zabbixHostProcess.stopHost(instanceNo); }