001package com.plivo.api.models.conference;
002
003import com.plivo.api.models.base.BaseResource;
004import java.util.List;
005
006public class Conference extends BaseResource {
007
008  private String conferenceName;
009  private String conferenceRunTime;
010  private String conferenceMemberCount;
011  private List<Member> members;
012
013  public static ConferenceListGetter listGetter() {
014    return new ConferenceListGetter();
015  }
016
017  public static ConferenceDeleter deleter(String conferenceName) {
018    return new ConferenceDeleter(conferenceName);
019  }
020
021  public static ConferenceAllDeleter allDeleter() {
022    return new ConferenceAllDeleter();
023  }
024
025  public static ConferenceGetter getter(String id) {
026    return new ConferenceGetter(id);
027  }
028
029  public static ConferenceMemberDeleter memberHangupper(String conferenceName, String memberId) {
030    return new ConferenceMemberDeleter(conferenceName, memberId);
031  }
032
033  public static ConferenceMemberKickCreator memberKicker(String conferenceName, String memberId) {
034    return new ConferenceMemberKickCreator(conferenceName, memberId);
035  }
036
037  public static ConferenceMemberSpeakCreator memberSpeaker(String conferenceName, String memberId,
038    String text) {
039    return new ConferenceMemberSpeakCreator(conferenceName, memberId, text);
040  }
041
042  public static ConferenceMemberPlayCreator memberPlayer(String conferenceName, String memberId,
043    String url) {
044    return new ConferenceMemberPlayCreator(conferenceName, memberId, url);
045  }
046
047  public static ConferenceMemberDeafCreator memberDeafer(String conferenceName, String memberId) {
048    return new ConferenceMemberDeafCreator(conferenceName, memberId);
049  }
050
051  public static ConferenceMemberMuteCreator memberMuter(String conferenceName, String memberId) {
052    return new ConferenceMemberMuteCreator(conferenceName, memberId);
053  }
054
055  public static ConferenceMemberSpeakDeleter memberSpeakStopper(String conferenceName,
056    String memberId) {
057    return new ConferenceMemberSpeakDeleter(conferenceName, memberId);
058  }
059
060  public static ConferenceMemberPlayDeleter memberPlayStopper(String conferenceName,
061    String memberId) {
062    return new ConferenceMemberPlayDeleter(conferenceName, memberId);
063  }
064
065  public static ConferenceMemberMuteDeleter memberMuteStopper(String conferenceName,
066    String memberId) {
067    return new ConferenceMemberMuteDeleter(conferenceName, memberId);
068  }
069
070  public static ConferenceMemberDeafDeleter memberDeafStopper(String conferenceName,
071    String memberId) {
072    return new ConferenceMemberDeafDeleter(conferenceName, memberId);
073  }
074
075  public static ConferenceRecordCreator recorder(String conferenceName) {
076    return new ConferenceRecordCreator(conferenceName);
077  }
078
079  public static ConferenceRecordDeleter recordStopper(String conferenceName) {
080    return new ConferenceRecordDeleter(conferenceName);
081  }
082
083  /**
084   * @return The name of the conference.
085   */
086  public String getConferenceName() {
087    return conferenceName;
088  }
089
090  /**
091   * @return Time in seconds since the conference has been initiated.
092   */
093  public String getConferenceRunTime() {
094    return conferenceRunTime;
095  }
096
097  /**
098   * @return Number of members in the conference.
099   */
100  public String getConferenceMemberCount() {
101    return conferenceMemberCount;
102  }
103
104  /**
105   * @return List of members of the conference.
106   */
107  public List<Member> getMembers() {
108    return members;
109  }
110
111  public ConferenceDeleter deleter() {
112    return Conference.deleter(conferenceName);
113  }
114
115  public ConferenceRecordCreator recorder() {
116    return Conference.recorder(conferenceName);
117  }
118
119  public ConferenceRecordDeleter recordStopper() {
120    return Conference.recordStopper(conferenceName);
121  }
122
123  @Override
124  public String getId() {
125    return getConferenceName();
126  }
127}