http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/MemoryConsumptionThresholds.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/MemoryConsumptionThresholds.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/MemoryConsumptionThresholds.java new file mode 100644 index 0000000..dc6a3e8 --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/MemoryConsumptionThresholds.java @@ -0,0 +1,52 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.stratos.autoscaler.pojo.policy.autoscale; + +import java.io.Serializable; + +/** + * The model class for MemoryConsumption definition. + */ +public class MemoryConsumptionThresholds implements Serializable { + + private static final long serialVersionUID = 5755634390464664663L; + private float upperLimit = 80.0F; + private float lowerLimit = 20.0F; + + public float getUpperLimit() { + return upperLimit; + } + public void setUpperLimit(float upperLimit) { + this.upperLimit = upperLimit; + } + public float getLowerLimit() { + return lowerLimit; + } + public void setLowerLimit(float lowerLimit) { + this.lowerLimit = lowerLimit; + } + + @Override + public String toString() { + return "MemoryConsumption [upperLimit=" + upperLimit + ", lowerLimit=" + + lowerLimit + "]"; + } + +} \ No newline at end of file
http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/RequestsInFlight.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/RequestsInFlight.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/RequestsInFlight.java new file mode 100644 index 0000000..252c6b9 --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/RequestsInFlight.java @@ -0,0 +1,109 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.stratos.autoscaler.pojo.policy.autoscale; + +import java.io.Serializable; + +/** + * The model class for RequestsInFlight definition. + */ +public class RequestsInFlight implements Serializable{ + + private static final long serialVersionUID = 8113964958155294290L; + private float average; + private float secondDerivative; + private float gradient; + private float scaleDownMarginOfGradient; + private float scaleDownMarginOfSecondDerivative; + + /** + * Gets the value of the average property. + */ + public float getAverage() { + return average; + } + + /** + * Sets the value of the average property. + */ + public void setAverage(float value) { + this.average = value; + } + + /** + * Gets the value of the second-derivative property. + */ + public float getSecondDerivative() { + return secondDerivative; + } + + /** + * Sets the value of the second-derivative property. + */ + public void setSecondDerivative(float value) { + this.secondDerivative = value; + } + + /** + * Gets the value of the gradient property. + */ + public float getGradient() { + return gradient; + } + + /** + * Sets the value of the gradient property. + * + */ + public void setGradient(float value) { + this.gradient = value; + } + + /** + * Gets the value of the scaleDownSlowerMarginOfGradient property. + */ + public float getScaleDownMarginOfGradient() { + return scaleDownMarginOfGradient; + } + + /** + * Sets the value of the scaleDownSlowerMarginOfGradient property. + * + */ + public void setScaleDownMarginOfGradient(float scaleDownMarginOfGradient) { + this.scaleDownMarginOfGradient = scaleDownMarginOfGradient; + } + + /** + * Gets the value of the scaleDownSlowerMarginOfSecondDerivative property. + */ + public float getScaleDownMarginOfSecondDerivative() { + return scaleDownMarginOfSecondDerivative; + } + + /** + * Sets the value of the scaleDownSlowerMarginOfSecondDerivative property. + * + */ + public void setScaleDownMarginOfSecondDerivative(float scaleDownMarginOfSecondDerivative) { + this.scaleDownMarginOfSecondDerivative = scaleDownMarginOfSecondDerivative; + } + +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/RequestsInFlightThresholds.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/RequestsInFlightThresholds.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/RequestsInFlightThresholds.java new file mode 100644 index 0000000..a4c30d4 --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/autoscale/RequestsInFlightThresholds.java @@ -0,0 +1,53 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.stratos.autoscaler.pojo.policy.autoscale; + +import java.io.Serializable; + +/** + * The model class for RequestsInFlight definition. + */ +public class RequestsInFlightThresholds implements Serializable{ + + private static final long serialVersionUID = 8113964958155294290L; + private float upperLimit = 80.0F; + private float lowerLimit = 20.0F; + + public float getLowerLimit() { + return lowerLimit; + } + public void setLowerLimit(float lowerLimit) { + this.lowerLimit = lowerLimit; + } + public float getUpperLimit() { + return upperLimit; + } + public void setUpperLimit(float upperLimit) { + this.upperLimit = upperLimit; + } + @Override + public String toString() { + return "RequestsInFlight [upperLimit=" + upperLimit + ", lowerLimit=" + + lowerLimit + "]"; + } + + + +} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/DeploymentPolicy.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/DeploymentPolicy.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/DeploymentPolicy.java new file mode 100644 index 0000000..6869520 --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/DeploymentPolicy.java @@ -0,0 +1,189 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.stratos.autoscaler.pojo.policy.deployment; + +import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.ApplicationLevelNetworkPartition; +import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network.ChildLevelNetworkPartition; +import org.apache.stratos.cloud.controller.stub.deployment.partition.Partition; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.Arrays; + +/** + * The model class for Deployment-Policy definition. + */ +public class DeploymentPolicy implements Serializable{ + + private static final long serialVersionUID = 5675507196284400099L; + private String id; + private String description; + private boolean isPublic; + private ApplicationLevelNetworkPartition[] applicationLevelNetworkPartitions; + private int tenantId; + + /** + * Gets the value of the id property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getId() { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setId(String value) { + this.id = value; + } + + /** + * Gets the value of the description property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getDescription() { + return description; + } + + /** + * Sets the value of the description property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setDescription(String value) { + this.description = value; + } + + /** + * Gets the value of the isPublic property. + * + * @return + * possible object is boolean + * + */ + public boolean getIsPublic() { + return isPublic; + } + + /** + * Sets the value of the isPublic property. + * + * @param isPublic + * allowed object is boolean + * + */ + public void setIsPublic(boolean isPublic) { + this.isPublic = isPublic; + } + + /** + * Gets the value of the tenantId property. + * + * + */ + public int getTenantId() { + return tenantId; + } + + /** + * Sets the value of the tenantId property. + * + * + */ + public void setTenantId(int tenantId) { + this.tenantId = tenantId; + } + + public void setApplicationLevelNetworkPartitions(ApplicationLevelNetworkPartition[] applicationLevelNetworkPartitions) { + if(applicationLevelNetworkPartitions == null) { + this.applicationLevelNetworkPartitions = new ApplicationLevelNetworkPartition[0]; + } else { + this.applicationLevelNetworkPartitions = Arrays.copyOf(applicationLevelNetworkPartitions, applicationLevelNetworkPartitions.length); + } + } + + public Partition[] getAllPartitions() { + ArrayList<Partition> partitionsList = new ArrayList<Partition>(); + for (ApplicationLevelNetworkPartition networkPartition : this.getApplicationLevelNetworkPartitions()) { + Partition[] partitions = networkPartition.getPartitions(); + if(partitions != null) { + partitionsList.addAll(Arrays.asList(partitions)); + } + } + return partitionsList.toArray(new Partition[partitionsList.size()]); + } + + public Partition getPartitionById(String id){ + for(Partition p : this.getAllPartitions()){ + if(p.getId().equalsIgnoreCase(id)) + return p; + } + return null; + } + + /** + * Gets the value of the partition-groups. + */ + public ApplicationLevelNetworkPartition[] getApplicationLevelNetworkPartitions() { + + return this.applicationLevelNetworkPartitions; + } + + public ApplicationLevelNetworkPartition getApplicationLevelNetworkPartition(String partitionGrpId){ + for(ApplicationLevelNetworkPartition parGrp : this.getApplicationLevelNetworkPartitions()){ + if(parGrp.getId().equals(partitionGrpId)) + return parGrp; + + } + return null; + } + + public String toString() { + return "Deployment Policy [id]" + this.id + " Description " + this.description + + " isPublic " + this.isPublic + +" [partitions] " + Arrays.toString(this.getAllPartitions()); + } + + public ChildLevelNetworkPartition getChildLevelNetworkPartition(String networkPartitionId) { + //TODO create a map of child level network partition context and return correct one + return null; + } + + public ChildLevelNetworkPartition[] getChildLevelNetworkPartitions() { + //TODO create a map of child level network partition context and return correct one + return new ChildLevelNetworkPartition[0]; + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/PartitionManager.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/PartitionManager.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/PartitionManager.java new file mode 100644 index 0000000..41de38d --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/PartitionManager.java @@ -0,0 +1,177 @@ +///* +// * Licensed to the Apache Software Foundation (ASF) under one +// * or more contributor license agreements. See the NOTICE file +// * distributed with this work for additional information +// * regarding copyright ownership. The ASF licenses this file +// * to you under the Apache License, Version 2.0 (the +// * "License"); you may not use this file except in compliance +// * with the License. You may obtain a copy of the License at +// * +// * http://www.apache.org/licenses/LICENSE-2.0 +// * +// * Unless required by applicable law or agreed to in writing, +// * software distributed under the License is distributed on an +// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// * KIND, either express or implied. See the License for the +// * specific language governing permissions and limitations +// * under the License. +// */ +// +//package org.apache.stratos.autoscaler.pojo.policy.deployment.partition; +// +//import org.apache.commons.lang.StringUtils; +//import org.apache.commons.logging.Log; +//import org.apache.commons.logging.LogFactory; +////import org.apache.stratos.autoscaler.NetworkPartitionLbHolder; +//import org.apache.stratos.autoscaler.client.CloudControllerClient; +//import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy; +//import org.apache.stratos.autoscaler.exception.AutoScalerException; +//import org.apache.stratos.autoscaler.exception.partition.InvalidPartitionException; +//import org.apache.stratos.autoscaler.exception.partition.PartitionValidationException; +//import org.apache.stratos.autoscaler.registry.RegistryManager; +//import org.apache.stratos.cloud.controller.stub.deployment.partition.Partition; +// +//import java.util.ArrayList; +//import java.util.HashMap; +//import java.util.List; +//import java.util.Map; +// +///** +// * The model class for managing Partitions. +// */ +//public class PartitionManager { +// +// private static final Log log = LogFactory.getLog(PartitionManager.class); +// +// // Partitions against partitionID +// private static Map<String, Partition> partitions = new HashMap<String, Partition>(); +// +// /* +// * Key - network partition id +// * Value - reference to NetworkPartition +// */ +//// private Map<String, NetworkPartitionLbHolder> networkPartitionLbHolders; +// +// private static class Holder { +// static final PartitionManager INSTANCE = new PartitionManager(); +// } +// +// public static PartitionManager getInstance() { +// return Holder.INSTANCE; +// } +// +// private PartitionManager() { +//// networkPartitionLbHolders = new HashMap<String, NetworkPartitionLbHolder>(); +// } +// +// +// public boolean partitionExist(String partitionId) { +// return partitions.containsKey(partitionId); +// } +// +// /* +// * Deploy a new partition to Auto Scaler. +// */ +// public boolean addNewPartition(Partition partition) throws InvalidPartitionException { +// if (StringUtils.isEmpty(partition.getId())) { +// throw new InvalidPartitionException("Partition id can not be empty"); +// } +// if (this.partitionExist(partition.getId())) { +// throw new InvalidPartitionException(String.format("Partition already exist in partition manager: [id] %s", partition.getId())); +// } +// if (null == partition.getProvider()) { +// throw new InvalidPartitionException("Mandatory field provider has not be set for partition " + partition.getId()); +// } +// try { +// validatePartitionViaCloudController(partition); +// RegistryManager.getInstance().persistPartition(partition); +// addPartitionToInformationModel(partition); +// if (log.isInfoEnabled()) { +// log.info(String.format("Partition is deployed successfully: [id] %s", partition.getId())); +// } +// return true; +// } catch (Exception e) { +// throw new InvalidPartitionException(e.getMessage(), e); +// } +// } +// +// +// public void addPartitionToInformationModel(Partition partition) { +// partitions.put(partition.getId(), partition); +// } +// +//// public NetworkPartitionLbHolder getNetworkPartitionLbHolder(String networkPartitionId) { +//// return this.networkPartitionLbHolders.get(networkPartitionId); +//// } +// +// public Partition getPartitionById(String partitionId) { +// if (partitionExist(partitionId)) +// return partitions.get(partitionId); +// else +// return null; +// } +// +// public Partition[] getAllPartitions() { +// return partitions.values().toArray(new Partition[0]); +// +// } +// +// public boolean validatePartitionViaCloudController(Partition partition) throws PartitionValidationException { +// if (log.isDebugEnabled()) { +// log.debug(String.format("Validating partition via cloud controller: [id] %s", partition.getId())); +// } +// return CloudControllerClient.getInstance().validatePartition(partition); +// } +// +//// public List<NetworkPartitionLbHolder> getNetworkPartitionLbHolders(DeploymentPolicy depPolicy) { +//// List<NetworkPartitionLbHolder> lbHolders = new ArrayList<NetworkPartitionLbHolder>(); +//// for (NetworkPartition networkPartition : depPolicy.getApplicationLevelNetworkPartitions()) { +//// String id = networkPartition.getId(); +//// NetworkPartitionLbHolder entry = networkPartitionLbHolders.get(id); +//// if (entry != null) { +//// lbHolders.add(entry); +//// } +//// } +//// return lbHolders; +//// } +// +//// public void deployNewNetworkPartitions(DeploymentPolicy depPolicy) { +//// for (NetworkPartition networkPartition : depPolicy.getApplicationLevelNetworkPartitions()) { +//// String id = networkPartition.getId(); +//// if (!networkPartitionLbHolders.containsKey(id)) { +//// NetworkPartitionLbHolder networkPartitionLbHolder = +//// new NetworkPartitionLbHolder(id); +//// addNetworkPartitionLbHolder(networkPartitionLbHolder); +//// RegistryManager.getInstance().persistNetworkPartitionIbHolder(networkPartitionLbHolder); +//// } +// +//// } +//// } +// +//// public void undeployNetworkPartitions(DeploymentPolicy depPolicy) { +//// for (NetworkPartition networkPartition : depPolicy.getApplicationLevelNetworkPartitions()) { +//// String id = networkPartition.getId(); +//// if (networkPartitionLbHolders.containsKey(id)) { +//// NetworkPartitionLbHolder netPartCtx = this.getNetworkPartitionLbHolder(id); +//// // remove from information model +//// this.removeNetworkPartitionLbHolder(netPartCtx); +//// //remove from the registry +//// RegistryManager.getInstance().removeNetworkPartition(this.getNetworkPartitionLbHolder(id).getNetworkPartitionId()); +//// } else { +//// String errMsg = "Network partition context not found for policy " + depPolicy; +//// log.error(errMsg); +//// throw new AutoScalerException(errMsg); +//// } +//// +//// } +//// } +//// +//// private void removeNetworkPartitionLbHolder(NetworkPartitionLbHolder nwPartLbHolder) { +//// networkPartitionLbHolders.remove(nwPartLbHolder.getNetworkPartitionId()); +//// } +//// +//// public void addNetworkPartitionLbHolder(NetworkPartitionLbHolder nwPartLbHolder) { +//// networkPartitionLbHolders.put(nwPartLbHolder.getNetworkPartitionId(), nwPartLbHolder); +//// } +// +//} http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ApplicationLevelNetworkPartition.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ApplicationLevelNetworkPartition.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ApplicationLevelNetworkPartition.java new file mode 100644 index 0000000..a771445 --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ApplicationLevelNetworkPartition.java @@ -0,0 +1,76 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +package org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network; + +import org.apache.stratos.cloud.controller.stub.deployment.partition.Partition; + +import java.io.Serializable; +import java.util.Arrays; + +/** +* The model class for NetworkPartition definition. +*/ +public class ApplicationLevelNetworkPartition implements Serializable{ + + private static final long serialVersionUID = -8043298009352097370L; + private String id; + private boolean activeByDefault; + private Partition[] partitions; + + public void setPartitions(Partition[] partitions) { + if(partitions == null) { + this.partitions = partitions; + } else { + this.partitions = Arrays.copyOf(partitions, partitions.length); + } + } + + /** + * Gets the value of the partitions. + */ + public Partition[] getPartitions() { + if (partitions == null) { + partitions = new Partition[0]; + } + return this.partitions; + } + + /** + * Gets the value of the id. + */ + public String getId() { + return id; + } + + /** + * sets the value of the id. + */ + public void setId(String id) { + this.id = id; + } + + public boolean isActiveByDefault() { + return activeByDefault; + } + + public void setActiveByDefault(boolean activeByDefault) { + this.activeByDefault = activeByDefault; + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelNetworkPartition.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelNetworkPartition.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelNetworkPartition.java new file mode 100644 index 0000000..f11956b --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/ChildLevelNetworkPartition.java @@ -0,0 +1,88 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +package org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network; + +import org.apache.stratos.cloud.controller.stub.deployment.partition.Partition; + +import java.io.Serializable; +import java.util.Arrays; + +/** +* The model class for NetworkPartition definition. +*/ +public class ChildLevelNetworkPartition implements Serializable { + + private static final long serialVersionUID = -8043298009352097370L; + private String id; + private String partitionAlgo; + private Partition[] partitions; + + /** + * Gets the value of the partitionAlgo property. + * + * @return possible object is + * {@link String } + */ + public String getPartitionAlgo() { + return partitionAlgo; + } + + /** + * Sets the value of the partitionAlgo property. + * + * @param value allowed object is + * {@link String } + */ + public void setPartitionAlgo(String value) { + this.partitionAlgo = value; + } + + public void setPartitions(Partition[] partitions) { + if (partitions == null) { + this.partitions = partitions; + } else { + this.partitions = Arrays.copyOf(partitions, partitions.length); + } + } + + /** + * Gets the value of the partitions. + */ + public Partition[] getPartitions() { + if (partitions == null) { + partitions = new Partition[0]; + } + return this.partitions; + } + + /** + * Gets the value of the id. + */ + public String getId() { + return id; + } + + /** + * sets the value of the id. + */ + public void setId(String id) { + this.id = id; + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/NetworkPartition.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/NetworkPartition.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/NetworkPartition.java new file mode 100644 index 0000000..e426688 --- /dev/null +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/pojo/policy/deployment/partition/network/NetworkPartition.java @@ -0,0 +1,44 @@ +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +package org.apache.stratos.autoscaler.pojo.policy.deployment.partition.network; + +import java.io.Serializable; +/** +* The model class for NetworkPartition definition. +*/ +public abstract class NetworkPartition implements Serializable { + + private static final long serialVersionUID = -8043298009352097370L; + private String id; + + /** + * Gets the value of the id. + */ + public String getId() { + return id; + } + + /** + * sets the value of the id. + */ + public void setId(String id) { + this.id = id; + } +} http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java deleted file mode 100644 index f0a546e..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/PolicyManager.java +++ /dev/null @@ -1,289 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy; - -import java.util.HashMap; -import java.util.Map; - -import org.apache.commons.lang3.StringUtils; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; -import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy; -import org.apache.stratos.autoscaler.exception.AutoScalerException; -import org.apache.stratos.autoscaler.exception.partition.InvalidPartitionException; -import org.apache.stratos.autoscaler.exception.policy.InvalidPolicyException; -//import org.apache.stratos.autoscaler.partition.PartitionManager; -import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy; -import org.apache.stratos.autoscaler.registry.RegistryManager; -import org.apache.stratos.cloud.controller.stub.deployment.partition.Partition; - -/** - * Manager class for the purpose of managing Autoscale/Deployment policy definitions. - */ -public class PolicyManager { - - private static final Log log = LogFactory.getLog(PolicyManager.class); - - private static Map<String, AutoscalePolicy> autoscalePolicyListMap = new HashMap<String, AutoscalePolicy>(); - - private static Map<String, DeploymentPolicy> deploymentPolicyListMap = new HashMap<String, DeploymentPolicy>(); - - /* An instance of a PolicyManager is created when the class is loaded. - * Since the class is loaded only once, it is guaranteed that an object of - * PolicyManager is created only once. Hence it is singleton. - */ - - private static class InstanceHolder { - private static final PolicyManager INSTANCE = new PolicyManager(); - } - - public static PolicyManager getInstance() { - return InstanceHolder.INSTANCE; - } - - private PolicyManager() { - } - - // Add the policy to information model and persist. - public boolean deployAutoscalePolicy(AutoscalePolicy policy) throws InvalidPolicyException { - if(StringUtils.isEmpty(policy.getId())){ - throw new AutoScalerException("Autoscaling policy id cannot be empty"); - } - this.addASPolicyToInformationModel(policy); - RegistryManager.getInstance().persistAutoscalerPolicy(policy); - if (log.isInfoEnabled()) { - log.info(String.format("Autoscaling policy is deployed successfully: [id] %s", policy.getId())); - } - return true; - } - - public boolean updateAutoscalePolicy(AutoscalePolicy policy) throws InvalidPolicyException { - if(StringUtils.isEmpty(policy.getId())){ - throw new AutoScalerException("Autoscaling policy id cannot be empty"); - } - this.updateASPolicyInInformationModel(policy); - RegistryManager.getInstance().persistAutoscalerPolicy(policy); - if (log.isInfoEnabled()) { - log.info(String.format("Autoscaling policy is updated successfully: [id] %s", policy.getId())); - } - return true; - } - - // Add the deployment policy to information model and persist. - public boolean deployDeploymentPolicy(DeploymentPolicy policy) throws InvalidPolicyException { - if(StringUtils.isEmpty(policy.getId())){ - throw new AutoScalerException("Deploying policy id cannot be empty"); - } - try { - if(log.isInfoEnabled()) { - log.info(String.format("Deploying deployment policy: [id] %s", policy.getId())); - } - fillPartitions(policy); - } catch (InvalidPartitionException e) { - log.error(e); - throw new InvalidPolicyException(String.format("Deployment policy is invalid: [id] %s", policy.getId()), e); - } - - addDeploymentPolicyToInformationModel(policy); - RegistryManager.getInstance().persistDeploymentPolicy(policy); - - if (log.isInfoEnabled()) { - log.info(String.format("Deployment policy is deployed successfully: [id] %s", policy.getId())); - } - return true; - } - - public boolean updateDeploymentPolicy(DeploymentPolicy policy) throws InvalidPolicyException { - if(StringUtils.isEmpty(policy.getId())){ - throw new AutoScalerException("Deploying policy id cannot be empty"); - } - try { - if(log.isInfoEnabled()) { - log.info(String.format("Updating deployment policy: [id] %s", policy.getId())); - } - fillPartitions(policy); - } catch (InvalidPartitionException e) { - log.error(e); - throw new InvalidPolicyException(String.format("Deployment policy is invalid: [id] %s", policy.getId()), e); - } - - updateDeploymentPolicyToInformationModel(policy); - RegistryManager.getInstance().persistDeploymentPolicy(policy); - - if (log.isInfoEnabled()) { - log.info(String.format("Deployment policy is updated successfully: [id] %s", policy.getId())); - } - return true; - } - - private void fillPartitions(DeploymentPolicy deploymentPolicy) throws InvalidPartitionException { - //TODO fill partition by extracting the partitions from policy -// PartitionManager partitionMgr = PartitionManager.getInstance(); -// for (Partition partition : deploymentPolicy.getAllPartitions()) { -// String partitionId = partition.getId(); -// if ((partitionId == null) || (!partitionMgr.partitionExist(partitionId))) { -// String msg = "Could not find partition: [id] " + partitionId + ". " + -// "Please deploy the partitions before deploying the deployment policies."; -// throw new InvalidPartitionException(msg); -// } -// -// fillPartition(partition, PartitionManager.getInstance().getPartitionById(partitionId)); -// } - } - - private static void fillPartition(Partition destPartition, Partition srcPartition) { - if(srcPartition.getProvider() == null) - throw new RuntimeException("Provider is not set in the deployed partition"); - - if (log.isDebugEnabled()) { - log.debug(String.format("Setting provider for partition: [id] %s [provider] %s", destPartition.getId(), srcPartition.getProvider())); - } - destPartition.setProvider(srcPartition.getProvider()); - - if (log.isDebugEnabled()) { - log.debug(String.format("Setting properties for partition: [id] %s [properties] %s", destPartition.getId(), srcPartition.getProperties())); - } - destPartition.setProperties(srcPartition.getProperties()); - } - - public void addASPolicyToInformationModel(AutoscalePolicy asPolicy) throws InvalidPolicyException { - if (!autoscalePolicyListMap.containsKey(asPolicy.getId())) { - if (log.isDebugEnabled()) { - log.debug("Adding autoscaling policy: " + asPolicy.getId()); - } - autoscalePolicyListMap.put(asPolicy.getId(), asPolicy); - } else { - String errMsg = "Specified autoscaling policy [" + asPolicy.getId() + "] already exists"; - log.error(errMsg); - throw new InvalidPolicyException(errMsg); - } - } - - public void updateASPolicyInInformationModel(AutoscalePolicy asPolicy) throws InvalidPolicyException { - if (autoscalePolicyListMap.containsKey(asPolicy.getId())) { - if (log.isDebugEnabled()) { - log.debug("Updating autoscaling policy: " + asPolicy.getId()); - } - autoscalePolicyListMap.put(asPolicy.getId(), asPolicy); - } - } - - /** - * Removes the specified policy - * - * @param policy - * @throws InvalidPolicyException - */ - public void undeployAutoscalePolicy(String policy) throws InvalidPolicyException { - if (autoscalePolicyListMap.containsKey(policy)) { - if (log.isDebugEnabled()) { - log.debug("Removing policy :" + policy); - } - autoscalePolicyListMap.remove(policy); - RegistryManager.getInstance().removeAutoscalerPolicy(this.getAutoscalePolicy(policy)); - } else { - throw new InvalidPolicyException("No such policy [" + policy + "] exists"); - } - } - - /** - * Returns an array of the Autoscale policies contained in this manager. - * - * @return - */ - public AutoscalePolicy[] getAutoscalePolicyList() { - return autoscalePolicyListMap.values().toArray(new AutoscalePolicy[0]); - } - - /** - * Returns the autoscale policy to which the specified id is mapped or null - * - * @param id - * @return - */ - public AutoscalePolicy getAutoscalePolicy(String id) { - return autoscalePolicyListMap.get(id); - } - - // Add the deployment policy to As in memmory information model. Does not persist. - public void addDeploymentPolicyToInformationModel(DeploymentPolicy policy) throws InvalidPolicyException { - if (!deploymentPolicyListMap.containsKey(policy.getId())) { - if (log.isDebugEnabled()) { - log.debug("Adding deployment policy: " + policy.getId()); - } -// PartitionManager.getInstance().deployNewNetworkPartitions(policy); - deploymentPolicyListMap.put(policy.getId(), policy); - } else { - String errMsg = "Specified deployment policy [" + policy.getId()+ "] already exists"; - log.error(errMsg); - throw new InvalidPolicyException(errMsg); - } - } - - public void updateDeploymentPolicyToInformationModel(DeploymentPolicy policy) throws InvalidPolicyException { - if (log.isDebugEnabled()) { - log.debug("Updating deployment policy: " + policy.getId()); - } - deploymentPolicyListMap.put(policy.getId(), policy); - } - - /** - * Removes the specified policy - * - * @param policy - * @throws InvalidPolicyException - */ - public void undeployDeploymentPolicy(String policy) throws InvalidPolicyException { - if (deploymentPolicyListMap.containsKey(policy)) { - if (log.isDebugEnabled()) { - log.debug("Removing deployment policy :" + policy); - } - DeploymentPolicy depPolicy = this.getDeploymentPolicy(policy); - // undeploy network partitions this deployment policy. -// PartitionManager.getInstance().undeployNetworkPartitions(depPolicy); - // undeploy the deployment policy. - RegistryManager.getInstance().removeDeploymentPolicy(depPolicy); - // remove from the infromation model. - deploymentPolicyListMap.remove(policy); - } else { - throw new InvalidPolicyException("No such policy [" + policy + "] exists"); - } - } - - /** - * Returns an array of the Deployment policies contained in this manager. - * - * @return - */ - public DeploymentPolicy[] getDeploymentPolicyList() { - return deploymentPolicyListMap.values().toArray(new DeploymentPolicy[0]); - } - - /** - * Returns the deployment policy to which the specified id is mapped or null - * - * @param id - * @return - */ - public DeploymentPolicy getDeploymentPolicy(String id) { - return deploymentPolicyListMap.get(id); - } - -} http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/AutoscalePolicy.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/AutoscalePolicy.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/AutoscalePolicy.java deleted file mode 100644 index 9305191..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/AutoscalePolicy.java +++ /dev/null @@ -1,187 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import java.io.Serializable; - -/** - * The model class for Autoscale-policy definition. - */ -public class AutoscalePolicy implements Serializable { - - private static final long serialVersionUID = 1754373171598089271L; - private LoadThresholds loadThresholds; - private String id; - private String displayName; - private String description; - private boolean isPublic; - private int tenantId; - private float instanceRoundingFactor; - - /** - * Gets the value of the loadThresholds property. - * - * @return - * possible object is - * {@link LoadThresholds } - * - */ - public LoadThresholds getLoadThresholds() { - return loadThresholds; - } - - /** - * Sets the value of the loadThresholds property. - * - * @param value - * allowed object is - * {@link LoadThresholds } - * - */ - public void setLoadThresholds(LoadThresholds value) { - this.loadThresholds = value; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets the value of the displayName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDisplayName() { - return displayName; - } - - /** - * Sets the value of the displayName property. - * - * @param displayName - * allowed object is - * {@link String } - * - */ - public void setDisplayName(String displayName) { - this.displayName = displayName; - } - - /** - * Gets the value of the description property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDescription() { - return description; - } - - /** - * Sets the value of the description property. - * - * @param description - * allowed object is - * {@link String } - * - */ - public void setDescription(String description) { - this.description = description; - } - - /** - * Gets the value of the isPublic property. - * - * @return - * possible object is boolean - * - */ - public boolean getIsPublic() { - return isPublic; - } - - /** - * Sets the value of the isPublic property. - * - * @param isPublic - * allowed object is boolean - * - */ - public void setIsPublic(boolean isPublic) { - this.isPublic = isPublic; - } - - /** - * Gets the value of the tenantId property. - * - * - */ - public int getTenantId() { - return tenantId; - } - - /** - * Sets the value of the tenantId property. - * - * - */ - public void setTenantId(int tenantId) { - this.tenantId = tenantId; - } - - @Override - public String toString() { - return "ASPolicy [id=" + id + ", displayName=" + displayName - + ", description=" + description + ", isPublic=" + isPublic + "]"; - } - - public float getInstanceRoundingFactor() { - return instanceRoundingFactor; - } - - public void setInstanceRoundingFactor(float instanceRoundingFactor) { - this.instanceRoundingFactor = instanceRoundingFactor; - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/DeploymentPolicy.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/DeploymentPolicy.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/DeploymentPolicy.java deleted file mode 100644 index 6130ab1..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/DeploymentPolicy.java +++ /dev/null @@ -1,189 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import org.apache.stratos.autoscaler.partition.network.ApplicationLevelNetworkPartition; -import org.apache.stratos.autoscaler.partition.network.ChildLevelNetworkPartition; -import org.apache.stratos.cloud.controller.stub.deployment.partition.Partition; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.Arrays; - -/** - * The model class for Deployment-Policy definition. - */ -public class DeploymentPolicy implements Serializable{ - - private static final long serialVersionUID = 5675507196284400099L; - private String id; - private String description; - private boolean isPublic; - private ApplicationLevelNetworkPartition[] applicationLevelNetworkPartitions; - private int tenantId; - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets the value of the description property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDescription() { - return description; - } - - /** - * Sets the value of the description property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDescription(String value) { - this.description = value; - } - - /** - * Gets the value of the isPublic property. - * - * @return - * possible object is boolean - * - */ - public boolean getIsPublic() { - return isPublic; - } - - /** - * Sets the value of the isPublic property. - * - * @param isPublic - * allowed object is boolean - * - */ - public void setIsPublic(boolean isPublic) { - this.isPublic = isPublic; - } - - /** - * Gets the value of the tenantId property. - * - * - */ - public int getTenantId() { - return tenantId; - } - - /** - * Sets the value of the tenantId property. - * - * - */ - public void setTenantId(int tenantId) { - this.tenantId = tenantId; - } - - public void setApplicationLevelNetworkPartitions(ApplicationLevelNetworkPartition[] applicationLevelNetworkPartitions) { - if(applicationLevelNetworkPartitions == null) { - this.applicationLevelNetworkPartitions = new ApplicationLevelNetworkPartition[0]; - } else { - this.applicationLevelNetworkPartitions = Arrays.copyOf(applicationLevelNetworkPartitions, applicationLevelNetworkPartitions.length); - } - } - - public Partition[] getAllPartitions() { - ArrayList<Partition> partitionsList = new ArrayList<Partition>(); - for (ApplicationLevelNetworkPartition networkPartition : this.getApplicationLevelNetworkPartitions()) { - Partition[] partitions = networkPartition.getPartitions(); - if(partitions != null) { - partitionsList.addAll(Arrays.asList(partitions)); - } - } - return partitionsList.toArray(new Partition[partitionsList.size()]); - } - - public Partition getPartitionById(String id){ - for(Partition p : this.getAllPartitions()){ - if(p.getId().equalsIgnoreCase(id)) - return p; - } - return null; - } - - /** - * Gets the value of the partition-groups. - */ - public ApplicationLevelNetworkPartition[] getApplicationLevelNetworkPartitions() { - - return this.applicationLevelNetworkPartitions; - } - - public ApplicationLevelNetworkPartition getApplicationLevelNetworkPartition(String partitionGrpId){ - for(ApplicationLevelNetworkPartition parGrp : this.getApplicationLevelNetworkPartitions()){ - if(parGrp.getId().equals(partitionGrpId)) - return parGrp; - - } - return null; - } - - public String toString() { - return "Deployment Policy [id]" + this.id + " Description " + this.description - + " isPublic " + this.isPublic - +" [partitions] " + Arrays.toString(this.getAllPartitions()); - } - - public ChildLevelNetworkPartition getChildLevelNetworkPartition(String networkPartitionId) { - //TODO create a map of child level network partition context and return correct one - return null; - } - - public ChildLevelNetworkPartition[] getChildLevelNetworkPartitions() { - //TODO create a map of child level network partition context and return correct one - return new ChildLevelNetworkPartition[0]; - } -} http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadAverage.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadAverage.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadAverage.java deleted file mode 100644 index 8b8b5b9..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadAverage.java +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import java.io.Serializable; - -/** - * The model class for LoadAverage definition. - */ -public class LoadAverage implements Serializable{ - - private static final long serialVersionUID = -2109860338694123343L; - private float average = 0.0f; - private float secondDerivative = 0.0f; - private float gradient = 0.0f; - private float scaleDownMarginOfGradient = 0.0f; - private float scaleDownMarginOfSecondDerivative = 0.0f; - - /** - * Gets the value of the average property. - */ - public float getAverage() { - return average; - } - - /** - * Sets the value of the average property. - */ - public void setAverage(float value) { - this.average = value; - } - - /** - * Gets the value of the second-derivative property. - */ - public float getSecondDerivative() { - return secondDerivative; - } - - /** - * Sets the value of the second-derivative property. - */ - public void setSecondDerivative(float value) { - this.secondDerivative = value; - } - - /** - * Gets the value of the gradient property. - */ - public float getGradient() { - return gradient; - } - - /** - * Sets the value of the gradient property. - * - */ - public void setGradient(float value) { - this.gradient = value; - } - - /** - * Gets the value of the scaleDownSlowerMarginOfGradient property. - */ - public float getScaleDownMarginOfGradient() { - return scaleDownMarginOfGradient; - } - - /** - * Sets the value of the scaleDownSlowerMarginOfGradient property. - * - */ - public void setScaleDownMarginOfGradient(float scaleDownMarginOfGradient) { - this.scaleDownMarginOfGradient = scaleDownMarginOfGradient; - } - - /** - * Gets the value of the scaleDownSlowerMarginOfSecondDerivative property. - */ - public float getScaleDownMarginOfSecondDerivative() { - return scaleDownMarginOfSecondDerivative; - } - - /** - * Sets the value of the scaleDownSlowerMarginOfSecondDerivative property. - * - */ - public void setScaleDownMarginOfSecondDerivative(float scaleDownMarginOfSecondDerivative) { - this.scaleDownMarginOfSecondDerivative = scaleDownMarginOfSecondDerivative; - } - - @Override - public String toString() { - return String.format("[average] %f [second-derivative] %f [gradient] %f [scale-down-margin-of-gradient] %f [scale-down-margin-of-second-derivative] %f", - getAverage(), getSecondDerivative(), getGradient(), getScaleDownMarginOfGradient(), getScaleDownMarginOfSecondDerivative()); - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadAverageThresholds.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadAverageThresholds.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadAverageThresholds.java deleted file mode 100644 index 81365e6..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadAverageThresholds.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import java.io.Serializable; - -/** - * The model class for LoadAverage definition. - */ -public class LoadAverageThresholds implements Serializable{ - - private static final long serialVersionUID = -2109860338694123343L; - private float upperLimit = 80.0F; - private float lowerLimit = 20.0F; - - public float getUpperLimit() { - return upperLimit; - } - public void setUpperLimit(float upperLimit) { - this.upperLimit = upperLimit; - } - public float getLowerLimit() { - return lowerLimit; - } - public void setLowerLimit(float lowerLimit) { - this.lowerLimit = lowerLimit; - } - - @Override - public String toString() { - return "LoadAverage [upperLimit=" + upperLimit + ", lowerLimit=" - + lowerLimit + "]"; - } - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadThresholds.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadThresholds.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadThresholds.java deleted file mode 100644 index 22e00a6..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/LoadThresholds.java +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import java.io.Serializable; - -/** - * The model class for LoadThresholds definition. - */ -public class LoadThresholds implements Serializable{ - - private static final long serialVersionUID = -8148571245537655867L; - private RequestsInFlightThresholds requestsInFlight; - private MemoryConsumptionThresholds memoryConsumption; - private LoadAverageThresholds loadAverage; - - /** - * Gets the value of the requestsInFlight property. - * - * @return - * possible object is - * {@link RequestsInFlightThresholds } - * - */ - public RequestsInFlightThresholds getRequestsInFlight() { - return requestsInFlight; - } - - /** - * Sets the value of the requestsInFlight property. - * - * @param value - * allowed object is - * {@link RequestsInFlightThresholds } - * - */ - public void setRequestsInFlight(RequestsInFlightThresholds value) { - this.requestsInFlight = value; - } - - /** - * Gets the value of the memoryConsumption property. - * - * @return - * possible object is - * {@link MemoryConsumptionThresholds } - * - */ - public MemoryConsumptionThresholds getMemoryConsumption() { - return memoryConsumption; - } - - /** - * Sets the value of the memoryConsumption property. - * - * @param value - * allowed object is - * {@link MemoryConsumptionThresholds } - * - */ - public void setMemoryConsumption(MemoryConsumptionThresholds value) { - this.memoryConsumption = value; - } - - /** - * Gets the value of the loadAverage property. - * - * @return - * possible object is - * {@link LoadAverageThresholds } - * - */ - public LoadAverageThresholds getLoadAverage() { - return loadAverage; - } - - /** - * Sets the value of the loadAverage property. - * - * @param value - * allowed object is - * {@link LoadAverageThresholds } - * - */ - public void setLoadAverage(LoadAverageThresholds value) { - this.loadAverage = value; - } - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/MemoryConsumption.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/MemoryConsumption.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/MemoryConsumption.java deleted file mode 100644 index a93f909..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/MemoryConsumption.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import java.io.Serializable; - -/** - * The model class for MemoryConsumption definition. - */ -public class MemoryConsumption implements Serializable { - - private static final long serialVersionUID = 5755634390464664663L; - private float average = 0.0f; - private float secondDerivative = 0.0f; - private float gradient = 0.0f; - private float scaleDownMarginOfGradient = 0.0f; - private float scaleDownMarginOfSecondDerivative = 0.0f; - - - /** - * Gets the value of the average property. - */ - public float getAverage() { - return average; - } - - /** - * Sets the value of the average property. - */ - public void setAverage(float value) { - this.average = value; - } - - /** - * Gets the value of the second-derivative property. - */ - public float getSecondDerivative() { - return secondDerivative; - } - - /** - * Sets the value of the second-derivative property. - */ - public void setSecondDerivative(float value) { - this.secondDerivative = value; - } - - /** - * Gets the value of the gradient property. - */ - public float getGradient() { - return gradient; - } - - /** - * Sets the value of the gradient property. - * - */ - public void setGradient(float value) { - this.gradient = value; - } - - - /** - * Gets the value of the scaleDownSlowerMarginOfGradient property. - */ - public float getScaleDownMarginOfGradient() { - return scaleDownMarginOfGradient; - } - - /** - * Sets the value of the scaleDownSlowerMarginOfGradient property. - * - */ - public void setScaleDownMarginOfGradient(float scaleDownMarginOfGradient) { - this.scaleDownMarginOfGradient = scaleDownMarginOfGradient; - } - - /** - * Gets the value of the scaleDownSlowerMarginOfSecondDerivative property. - */ - public float getScaleDownMarginOfSecondDerivative() { - return scaleDownMarginOfSecondDerivative; - } - - /** - * Sets the value of the scaleDownSlowerMarginOfSecondDerivative property. - * - */ - public void setScaleDownMarginOfSecondDerivative(float scaleDownMarginOfSecondDerivative) { - this.scaleDownMarginOfSecondDerivative = scaleDownMarginOfSecondDerivative; - } - - @Override - public String toString() { - return String.format("[average] %f [second-derivative] %f [gradient] %f [scale-down-margin-of-gradient] %f [scale-down-margin-of-second-derivative] %f", - getAverage(), getSecondDerivative(), getGradient(), getScaleDownMarginOfGradient(), getScaleDownMarginOfSecondDerivative()); - } -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/MemoryConsumptionThresholds.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/MemoryConsumptionThresholds.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/MemoryConsumptionThresholds.java deleted file mode 100644 index 5d637ba..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/MemoryConsumptionThresholds.java +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import java.io.Serializable; - -/** - * The model class for MemoryConsumption definition. - */ -public class MemoryConsumptionThresholds implements Serializable { - - private static final long serialVersionUID = 5755634390464664663L; - private float upperLimit = 80.0F; - private float lowerLimit = 20.0F; - - public float getUpperLimit() { - return upperLimit; - } - public void setUpperLimit(float upperLimit) { - this.upperLimit = upperLimit; - } - public float getLowerLimit() { - return lowerLimit; - } - public void setLowerLimit(float lowerLimit) { - this.lowerLimit = lowerLimit; - } - - @Override - public String toString() { - return "MemoryConsumption [upperLimit=" + upperLimit + ", lowerLimit=" - + lowerLimit + "]"; - } - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/RequestsInFlight.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/RequestsInFlight.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/RequestsInFlight.java deleted file mode 100644 index b56e305..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/RequestsInFlight.java +++ /dev/null @@ -1,109 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import java.io.Serializable; - -/** - * The model class for RequestsInFlight definition. - */ -public class RequestsInFlight implements Serializable{ - - private static final long serialVersionUID = 8113964958155294290L; - private float average; - private float secondDerivative; - private float gradient; - private float scaleDownMarginOfGradient; - private float scaleDownMarginOfSecondDerivative; - - /** - * Gets the value of the average property. - */ - public float getAverage() { - return average; - } - - /** - * Sets the value of the average property. - */ - public void setAverage(float value) { - this.average = value; - } - - /** - * Gets the value of the second-derivative property. - */ - public float getSecondDerivative() { - return secondDerivative; - } - - /** - * Sets the value of the second-derivative property. - */ - public void setSecondDerivative(float value) { - this.secondDerivative = value; - } - - /** - * Gets the value of the gradient property. - */ - public float getGradient() { - return gradient; - } - - /** - * Sets the value of the gradient property. - * - */ - public void setGradient(float value) { - this.gradient = value; - } - - /** - * Gets the value of the scaleDownSlowerMarginOfGradient property. - */ - public float getScaleDownMarginOfGradient() { - return scaleDownMarginOfGradient; - } - - /** - * Sets the value of the scaleDownSlowerMarginOfGradient property. - * - */ - public void setScaleDownMarginOfGradient(float scaleDownMarginOfGradient) { - this.scaleDownMarginOfGradient = scaleDownMarginOfGradient; - } - - /** - * Gets the value of the scaleDownSlowerMarginOfSecondDerivative property. - */ - public float getScaleDownMarginOfSecondDerivative() { - return scaleDownMarginOfSecondDerivative; - } - - /** - * Sets the value of the scaleDownSlowerMarginOfSecondDerivative property. - * - */ - public void setScaleDownMarginOfSecondDerivative(float scaleDownMarginOfSecondDerivative) { - this.scaleDownMarginOfSecondDerivative = scaleDownMarginOfSecondDerivative; - } - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/RequestsInFlightThresholds.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/RequestsInFlightThresholds.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/RequestsInFlightThresholds.java deleted file mode 100644 index 19b4eaa..0000000 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/policy/model/RequestsInFlightThresholds.java +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.stratos.autoscaler.policy.model; - -import java.io.Serializable; - -/** - * The model class for RequestsInFlight definition. - */ -public class RequestsInFlightThresholds implements Serializable{ - - private static final long serialVersionUID = 8113964958155294290L; - private float upperLimit = 80.0F; - private float lowerLimit = 20.0F; - - public float getLowerLimit() { - return lowerLimit; - } - public void setLowerLimit(float lowerLimit) { - this.lowerLimit = lowerLimit; - } - public float getUpperLimit() { - return upperLimit; - } - public void setUpperLimit(float upperLimit) { - this.upperLimit = upperLimit; - } - @Override - public String toString() { - return "RequestsInFlight [upperLimit=" + upperLimit + ", lowerLimit=" - + lowerLimit + "]"; - } - - - -} \ No newline at end of file http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java index 9dd7e85..63c5fcc 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/registry/RegistryManager.java @@ -27,8 +27,8 @@ import org.apache.commons.logging.LogFactory; //import org.apache.stratos.autoscaler.NetworkPartitionLbHolder; import org.apache.stratos.autoscaler.exception.AutoScalerException; import org.apache.stratos.autoscaler.pojo.ServiceGroup; -import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy; -import org.apache.stratos.autoscaler.policy.model.DeploymentPolicy; +import org.apache.stratos.autoscaler.pojo.policy.autoscale.AutoscalePolicy; +import org.apache.stratos.autoscaler.pojo.policy.deployment.DeploymentPolicy; import org.apache.stratos.autoscaler.util.AutoScalerConstants; import org.apache.stratos.autoscaler.util.Deserializer; import org.apache.stratos.autoscaler.util.Serializer; http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java index 9eac1da..7c7f70a 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/AutoscalerRuleEvaluator.java @@ -21,7 +21,7 @@ package org.apache.stratos.autoscaler.rule; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -//import org.apache.stratos.autoscaler.partition.PartitionManager; +//import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.PartitionManager; //import org.apache.stratos.autoscaler.context.partition.ClusterLevelPartitionContext; //import org.apache.stratos.autoscaler.NetworkPartitionLbHolder; import org.apache.stratos.common.constants.StratosConstants; http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java index 15ca0e1..e9244f4 100644 --- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java +++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/rule/RuleTasksDelegator.java @@ -36,7 +36,7 @@ import org.apache.stratos.autoscaler.exception.cartridge.TerminationException; import org.apache.stratos.autoscaler.monitor.cluster.AbstractClusterMonitor; import org.apache.stratos.autoscaler.monitor.cluster.VMClusterMonitor; import org.apache.stratos.autoscaler.monitor.cluster.VMServiceClusterMonitor; -//import org.apache.stratos.autoscaler.partition.PartitionManager; +//import org.apache.stratos.autoscaler.pojo.policy.deployment.partition.PartitionManager; import org.apache.stratos.cloud.controller.stub.pojo.MemberContext; import org.apache.stratos.common.constants.StratosConstants; import org.apache.stratos.messaging.domain.topology.Cluster; http://git-wip-us.apache.org/repos/asf/stratos/blob/531517a1/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl ---------------------------------------------------------------------- diff --git a/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl b/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl index ae940b7..f24c410 100644 --- a/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl +++ b/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl @@ -24,13 +24,13 @@ import org.apache.stratos.messaging.domain.topology.Cluster; import org.apache.stratos.autoscaler.context.AutoscalerContext; import org.apache.stratos.autoscaler.ClusterContext; import org.apache.stratos.autoscaler.Constants; -import org.apache.stratos.autoscaler.policy.PolicyManager; -import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy; +import org.apache.stratos.autoscaler.pojo.policy.PolicyManager; +import org.apache.stratos.autoscaler.pojo.policy.autoscale.AutoscalePolicy; import org.apache.stratos.messaging.domain.policy.Partition; import org.apache.stratos.messaging.domain.policy.NetworkPartition; import org.apache.stratos.messaging.domain.policy.DeploymentPolicy; -import org.apache.stratos.autoscaler.policy.model.RequestsInFlight; -import org.apache.stratos.autoscaler.policy.model.LoadThresholds; +import org.apache.stratos.autoscaler.pojo.policy.autoscale.RequestsInFlight; +import org.apache.stratos.autoscaler.pojo.policy.autoscale.LoadThresholds; import org.apache.stratos.autoscaler.client.CloudControllerClient; import org.apache.stratos.autoscaler.algorithm.AutoscaleAlgorithm; import org.apache.stratos.autoscaler.algorithm.OneAfterAnother; @@ -39,7 +39,7 @@ import org.apache.stratos.messaging.message.receiver.topology.TopologyManager; import org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator; import org.apache.commons.logging.Log; -global org.apache.stratos.autoscaler.policy.PolicyManager $manager; +global org.apache.stratos.autoscaler.pojo.policy.PolicyManager $manager; global org.apache.stratos.autoscaler.context.AutoscalerContext $context; global org.apache.commons.logging.Log log; global org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator $evaluator;
