All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jclouds.azure.management.domain.role.AbstractRole Maven / Gradle / Ivy

package org.jclouds.azure.management.domain.role;

import java.util.ArrayList;
import java.util.List;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;

import org.jclouds.azure.management.domain.role.conf.ConfigurationSet;

//@XmlRootElement(name = "PersistentVMRole")
public abstract class AbstractRole {

   /**
    * Specifies the name for the virtual machine. The name must be unique within Windows Azure.
    */
   @XmlElement(required = true, name = "RoleName")
   private String roleName;

   /**
    * The type of the role for the virtual machine. The only supported value is PersistentVMRole.
    */
   @XmlElement(required = true, name = "RoleType")
   private String roleType;

   /**
    * Required. You must specifye either a WindowsProvisioningConfigurationSet or
    * LinuxProvisioningConfigurationSet configuration set.
    * 
    * Optional. You can specify a NetworkConfigurationSet which contains the metadata required to
    * create the virtual network configuration for a virtual machine.
    */
   @XmlElementWrapper(name = "ConfigurationSets")
   @XmlElement(name = "ConfigurationSet")
   private List configurationSets = new ArrayList(0);
   
   /**
    * Specifies the name of an availability set to which to add the virtual machine. This value
    * controls the virtual machine allocation in the Windows Azure environment. Virtual machines
    * specified in the same availability set are allocated to different nodes to maximize
    * availability.
    */
   @XmlElement(name = "AvailabilitySetName")
   private String availabilitySetName;

   @XmlElementWrapper(name = "DataVirtualHardDisks")
   @XmlElement(name = "DataVirtualHardDisk")
   private List dataVirtualHardDisks = new ArrayList(0);
   
   @XmlElement(name = "OSVirtualHardDisk")
   private OSVirtualHardDisk osVirtualHardDisk;
   
   /**
    * The size of the virtual machine to allocate. The default value is Small.
    */
   @XmlElement(name = "RoleSize")
   private RoleSize roleSize;

   public AbstractRole() {
      super();
   }

   public String getRoleName() {
      return roleName;
   }

   public String getRoleType() {
      return roleType;
   }

   public String getAvailabilitySetName() {
      return availabilitySetName;
   }

   public RoleSize getRoleSize() {
      return roleSize;
   }

   public void setRoleName(String roleName) {
      this.roleName = roleName;
   }

   public void setRoleType(String roleType) {
      this.roleType = roleType;
   }

   public void setAvailabilitySetName(String availabilitySetName) {
      this.availabilitySetName = availabilitySetName;
   }

   public void setRoleSize(RoleSize roleSize) {
      this.roleSize = roleSize;
   }

   public void setOsVirtualHardDisk(OSVirtualHardDisk osVirtualHardDisk) {
      this.osVirtualHardDisk = osVirtualHardDisk;
   }

   public OSVirtualHardDisk getOsVirtualHardDisk() {
      return osVirtualHardDisk;
   }

   public List getConfigurationSets() {
      return configurationSets;
   }

   public void setConfigurationSets(List configurationSets) {
      this.configurationSets = configurationSets;
   }

   public List getDataVirtualHardDisks() {
      return dataVirtualHardDisks;
   }

   public void setDataVirtualHardDisks(List dataVirtualHardDisks) {
      this.dataVirtualHardDisks = dataVirtualHardDisks;
   }

   @Override
   public String toString() {
      return "Role [roleName=" + roleName + ", roleType=" + roleType + ", availabilitySetName=" + availabilitySetName
               + ", roleSize=" + roleSize + ", osVirtualHardDisk=" + osVirtualHardDisk + ", configurationSets="
               + configurationSets + ", dataVirtualHardDisks=" + dataVirtualHardDisks + "]";
   }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy