2020-08-14 16:58:22 +00:00
|
|
|
/*
|
|
|
|
* Copyright 2013 The WebRTC project authors. All Rights Reserved.
|
|
|
|
*
|
|
|
|
* Use of this source code is governed by a BSD-style license
|
|
|
|
* that can be found in the LICENSE file in the root of the source
|
|
|
|
* tree. An additional intellectual property rights grant can be found
|
|
|
|
* in the file PATENTS. All contributing project authors may
|
|
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
|
|
*/
|
|
|
|
|
|
|
|
package org.webrtc;
|
|
|
|
|
|
|
|
import java.util.Locale;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Description of an RFC 4566 Session.
|
|
|
|
* SDPs are passed as serialized Strings in Java-land and are materialized
|
|
|
|
* to SessionDescriptionInterface as appropriate in the JNI layer.
|
|
|
|
*/
|
|
|
|
public class SessionDescription {
|
|
|
|
/** Java-land enum version of SessionDescriptionInterface's type() string. */
|
|
|
|
public static enum Type {
|
|
|
|
OFFER,
|
|
|
|
PRANSWER,
|
2020-12-23 07:48:30 +00:00
|
|
|
ANSWER,
|
|
|
|
ROLLBACK;
|
2020-08-14 16:58:22 +00:00
|
|
|
|
|
|
|
public String canonicalForm() {
|
|
|
|
return name().toLowerCase(Locale.US);
|
|
|
|
}
|
|
|
|
|
|
|
|
@CalledByNative("Type")
|
|
|
|
public static Type fromCanonicalForm(String canonical) {
|
|
|
|
return Type.valueOf(Type.class, canonical.toUpperCase(Locale.US));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public final Type type;
|
|
|
|
public final String description;
|
|
|
|
|
|
|
|
@CalledByNative
|
|
|
|
public SessionDescription(Type type, String description) {
|
|
|
|
this.type = type;
|
|
|
|
this.description = description;
|
|
|
|
}
|
|
|
|
|
|
|
|
@CalledByNative
|
|
|
|
String getDescription() {
|
|
|
|
return description;
|
|
|
|
}
|
|
|
|
|
|
|
|
@CalledByNative
|
|
|
|
String getTypeInCanonicalForm() {
|
|
|
|
return type.canonicalForm();
|
|
|
|
}
|
|
|
|
}
|