package im.actor.runtime.webrtc; import com.google.j2objc.annotations.ObjectiveCName; import com.google.j2objc.annotations.Property; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; /** * WebRTC Ice Server */ public class WebRTCIceServer { @NotNull @Property("nonatomic, readonly") private String url; @Nullable @Property("nonatomic, readonly") private String username; @Nullable @Property("nonatomic, readonly") private String credential; /** * Default Constructor for ICE server * * @param url url for server * @param username optional username for server * @param credential optional credential for server */ @ObjectiveCName("initWithUrl:withUserName:withCredential:") public WebRTCIceServer(@NotNull String url, @Nullable String username, @Nullable String credential) { this.url = url; this.username = username; this.credential = credential; } /** * Constructor for non-authenticated ICE server * * @param url url for server */ @ObjectiveCName("initWithUrl:") public WebRTCIceServer(@NotNull String url) { this(url, null, null); } /** * Get URL to server * * @return url */ @NotNull public String getUrl() { return url; } /** * Get Optional username for server * * @return username */ @Nullable public String getUsername() { return username; } /** * Get Optional credential for server * * @return credential */ @Nullable public String getCredential() { return credential; } }