Conference.java :  » Network » socialconferenceproject » at » socialconference » backend » model » Android Open Source

Android Open Source » Network » socialconferenceproject 
socialconferenceproject » at » socialconference » backend » model » Conference.java
package at.socialconference.backend.model;

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

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.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.hibernate.annotations.LazyCollection;
import org.hibernate.annotations.LazyCollectionOption;

@Entity
@Table(name = "t_conferences")
public class Conference implements Insertable {

  @Id
  @GeneratedValue(strategy = GenerationType.AUTO)
  @Column(name = "conferenceid")
  private Integer id;

  @Column(name = "name")
  private String name;
  @Column(name = "date_from")
  private Date date_from;
  @Column(name = "date_to")
  private Date date_to;
  @Column(name = "description")
  private String description;

  @ManyToOne
  @JoinColumn(name = "place")
  @LazyCollection(LazyCollectionOption.FALSE)
  private Place place;
  
  @ManyToMany
  @JoinTable(name = "t_conference_talk", joinColumns = { @JoinColumn(name = "conferenceid") }, inverseJoinColumns = { @JoinColumn(name = "talkid") })
  @LazyCollection(LazyCollectionOption.FALSE)
  private List<Talk> talks = new ArrayList<Talk>();

  public Conference() {}

  public Conference(at.socialconference.inter.model.Conference conference) {
    this.date_from = conference.getDate_from();
    this.date_to = conference.getDate_to();
    this.description = conference.getDescription();
    this.id = conference.getId();
    this.name = conference.getName();
    for (at.socialconference.inter.model.Talk t : conference.getTalks()) {
      this.talks.add(new Talk(t));
    }
    this.place = new Place(conference.getPlace());
  }




  public Integer getId() {
    return id;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public Date getDate_from() {
    return date_from;
  }

  public void setDate_from(Date date_from) {
    this.date_from = date_from;
  }

  public Date getDate_to() {
    return date_to;
  }

  public void setDate_to(Date date_to) {
    this.date_to = date_to;
  }

  public String getDescription() {
    return description;
  }

  public void setDescription(String description) {
    this.description = description;
  }

  public void setPlace(Place place) {
    this.place = place;
  }

  public Place getPlace() {
    return place;
  }


  public void setTalks(List<Talk> talks) {
    this.talks = talks;
  }

  public List<Talk> getTalks() {
    return talks;
  }

  public static ArrayList<at.socialconference.inter.model.Conference> getInterConferences(List<Conference> confs) {

    ArrayList<at.socialconference.inter.model.Conference> result = new ArrayList<at.socialconference.inter.model.Conference>();
    for (int i = 0; i < confs.size(); i++) {
      at.socialconference.inter.model.Conference temp = confs.get(i).generateInterConference();
      result.add(i, temp);
    }

    return result;
  }
  
  public at.socialconference.inter.model.Conference generateInterConference() {
    List<at.socialconference.inter.model.Talk> tt = new ArrayList<at.socialconference.inter.model.Talk>();
    
    for (Talk t : talks) {
      tt.add(t.generateInterTalk()); // VORLUFIG 0
    }

    return new at.socialconference.inter.model.Conference(id, name, date_from, date_to, description, place.generateInterPlace(),tt);
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.