com.abiquo.server.core.cloud.LayerDto Maven / Gradle / Ivy
/**
* Copyright (C) 2008 Abiquo Holdings S.L.
*
* Licensed 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 com.abiquo.server.core.cloud;
import javax.xml.bind.annotation.XmlRootElement;
import com.abiquo.model.transport.SingleResourceTransportDto;
/**
* Layers offer antiaffinity in the allocation of hosts to VMs. A virtual appliance can have several
* layers, and each VM can belong to a layer. The platform will deploy VMs in the same layer on
* different hosts to assure the stability of the virtual appliance. Actions on VMs with layers must
* respect the antiaffinity rules.
*/
@XmlRootElement(name = "layer")
public class LayerDto extends SingleResourceTransportDto
{
private static final long serialVersionUID = 6194318006598808090L;
private static final String TYPE = "application/vnd.abiquo.layer";
public static final String MEDIA_TYPE = TYPE + "+" + JSON;
public static final String SHORT_MEDIA_TYPE_JSON = MEDIA_TYPE;
public static final String SHORT_MEDIA_TYPE_XML = TYPE + "+" + XML;
public static final String MEDIA_TYPE_XML = TYPE + "+" + XML + VERSION_PARAM + API_VERSION;
public static final String MEDIA_TYPE_JSON = MEDIA_TYPE + VERSION_PARAM + API_VERSION;
/** Name of the layer */
private String name;
public String getName()
{
return name;
}
public void setName(final String name)
{
this.name = name;
}
@Override
public String getMediaType()
{
return MEDIA_TYPE_JSON;
}
@Override
public String getBaseMediaType()
{
return MEDIA_TYPE;
}
}