package org.opentosca.csarrepo.model; import java.net.URL; import javax.persistence.CascadeType; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.GenerationType; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.Table; /** * * Hibernate annotated class for cloud instances * * @author Dennis Przytarski, Thomas Kosch (mail@thomaskosch.com) * */ @Entity @Table(name = "cloud_instance") public class CloudInstance { @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = "cloud_instance_id") private long id; @Column(name = "address") private URL address; @Column(name = "name") private String name; @ManyToOne @JoinColumn(name = "csar_file_id") private CsarFile csarFile; @ManyToOne(cascade = CascadeType.ALL) @JoinColumn(name = "open_tosca_server_id") private OpenToscaServer openToscaServer; /** * @return the id */ public long getId() { return id; } /** * @return get address of cloud instance */ public URL getAddress() { return address; } /** * @param address * set address of the cloud instance */ public void setAddress(URL address) { this.address = address; } /** * @return the instance id */ public String getName() { return name; } /** * @param instanceId * the instance id */ public void setName(String name) { this.name = name; } /** * @return The Csarfile */ public CsarFile getCsarFile() { return csarFile; } /** * @param csarFile * The Csarfile */ public void setCsarFile(CsarFile csarFile) { this.csarFile = csarFile; } /** * @return the OpenTosca server associated with this cloud instance */ public OpenToscaServer getOpenToscaServer() { return openToscaServer; } /** * @param openToscaServer * An OpenTosca server associated with this cloud instance */ public void setOpenToscaServer(OpenToscaServer openToscaServer) { this.openToscaServer = openToscaServer; } }