package eu.musesproject.server.entity; /* * #%L * MUSES Server * %% * Copyright (C) 2013 - 2015 Sweden Connectivity * %% * 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. * #L% */ import java.io.Serializable; import javax.persistence.*; import java.util.List; /** * The persistent class for the threat database table. * */ @Entity @Table(name="threat") @NamedQueries ({ @NamedQuery(name="Threat.findAll", query="SELECT t FROM Threat t"), @NamedQuery(name="Threat.findThreatById", query="SELECT t FROM Threat t where t.threatId = :threat_id"), @NamedQuery(name="Threat.findThreatbyDescription", query="SELECT t FROM Threat t where t.description = :description"), }) public class Threat implements Serializable { private static final long serialVersionUID = 1L; @Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="threat_id", unique=true, nullable=false) private String threatId; private int badOutcomeCount; @Lob @Column(nullable=false) private String description; private int occurences; @Column(nullable=false) private double probability; private int ttl; //bi-directional many-to-one association to Outcome @OneToMany(mappedBy="threat") private List<Outcome> outcomes; public Threat() { } public String getThreatId() { return this.threatId; } public void setThreatId(String threatId) { this.threatId = threatId; } public int getBadOutcomeCount() { return this.badOutcomeCount; } public void setBadOutcomeCount(int badOutcomeCount) { this.badOutcomeCount = badOutcomeCount; } public String getDescription() { return this.description; } public void setDescription(String description) { this.description = description; } public int getOccurences() { return this.occurences; } public void setOccurences(int occurences) { this.occurences = occurences; } public double getProbability() { return this.probability; } public void setProbability(double probability) { this.probability = probability; } public int getTtl() { return this.ttl; } public void setTtl(int ttl) { this.ttl = ttl; } public List<Outcome> getOutcomes() { return this.outcomes; } public void setOutcomes(List<Outcome> outcomes) { this.outcomes = outcomes; } public Outcome addOutcome(Outcome outcome) { getOutcomes().add(outcome); outcome.setThreat(this); return outcome; } public Outcome removeOutcome(Outcome outcome) { getOutcomes().remove(outcome); outcome.setThreat(null); return outcome; } }