| /* | |
| * 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, | |
| ANSWER; | |
| 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(); | |
| } | |
| } |