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}