Add SDP interface classes extracted from nist RI.
remove 'public' keyword from each method in all interface classes.
add super(exception).
diff --git a/java/javax/sdp/Attribute.java b/java/javax/sdp/Attribute.java
new file mode 100644
index 0000000..156f051
--- /dev/null
+++ b/java/javax/sdp/Attribute.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface Attribute {
+ String encode();
+ String getName() throws SdpParseException;
+ void setName(String name) throws SdpException;
+ boolean hasValue() throws SdpParseException;
+ String getValue() throws SdpParseException;
+ void setValue(String value) throws SdpException;
+ void setValueAllowNull(String value) ;
+ Object clone();
+ boolean equals(Object that );
+}
diff --git a/java/javax/sdp/BandWidth.java b/java/javax/sdp/BandWidth.java
new file mode 100644
index 0000000..4edea95
--- /dev/null
+++ b/java/javax/sdp/BandWidth.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface BandWidth {
+ String getBwtype();
+ int getBandwidth();
+ void setBwtype(String b);
+ void setBandwidth(int b);
+ String encode();
+ String getType() throws SdpParseException;
+ void setType(String type) throws SdpException;
+ int getValue() throws SdpParseException;
+ void setValue(int value) throws SdpException;
+}
diff --git a/java/javax/sdp/Connection.java b/java/javax/sdp/Connection.java
new file mode 100644
index 0000000..35027ce
--- /dev/null
+++ b/java/javax/sdp/Connection.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface Connection {
+ String getNettype();
+ String getAddrtype();
+ void setNettype(String n);
+ void setAddrType(String a);
+ String encode();
+ String getAddress() throws SdpParseException;
+ String getAddressType() throws SdpParseException;
+ String getNetworkType() throws SdpParseException;
+ void setAddressType(String type) throws SdpException;
+ void setNetworkType(String type) throws SdpException;
+ Object clone();
+}
diff --git a/java/javax/sdp/EMail.java b/java/javax/sdp/EMail.java
new file mode 100644
index 0000000..ef1811f
--- /dev/null
+++ b/java/javax/sdp/EMail.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface EMail {
+ String encode();
+ String getValue() throws SdpParseException;
+ void setValue(String value) throws SdpException;
+ Object clone();
+}
diff --git a/java/javax/sdp/Info.java b/java/javax/sdp/Info.java
new file mode 100644
index 0000000..6c6a7f0
--- /dev/null
+++ b/java/javax/sdp/Info.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface Info {
+ String getInformation();
+ void setInformation(String info);
+ String encode();
+ String getValue() throws SdpParseException;
+ void setValue(String value) throws SdpException;
+ Object clone();
+}
diff --git a/java/javax/sdp/Key.java b/java/javax/sdp/Key.java
new file mode 100644
index 0000000..97ec3fa
--- /dev/null
+++ b/java/javax/sdp/Key.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface Key {
+ String getType();
+ String getKeyData();
+ void setType(String t);
+ void setKeyData(String k);
+ String encode();
+ String getMethod() throws SdpParseException;
+ void setMethod(String name) throws SdpException;
+ boolean hasKey() throws SdpParseException;
+ String getKey() throws SdpParseException;
+ void setKey(String key) throws SdpException;
+ Object clone();
+}
diff --git a/java/javax/sdp/Media.java b/java/javax/sdp/Media.java
new file mode 100644
index 0000000..0ba9c41
--- /dev/null
+++ b/java/javax/sdp/Media.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.util.*;
+
+public interface Media {
+ String getMedia();
+ int getPort();
+ int getNports();
+ Vector getFormats();
+ void setMedia(String m);
+ void setPort(int p);
+ void setNports(int n);
+ void setProto(String p);
+ void setFormats(Vector formats);
+ void setMediaType(String mediaType) throws SdpException;
+ int getMediaPort() throws SdpParseException;
+ void setMediaPort(int port) throws SdpException;
+ int getPortCount() throws SdpParseException;
+ void setPortCount(int portCount) throws SdpException;
+ String getProtocol() throws SdpParseException;
+ void setProtocol(String protocol) throws SdpException;
+ void setMediaFormats(Vector mediaFormats) throws SdpException;
+ String encode();
+ Object clone();
+}
diff --git a/java/javax/sdp/MediaDescription.java b/java/javax/sdp/MediaDescription.java
new file mode 100644
index 0000000..936b413
--- /dev/null
+++ b/java/javax/sdp/MediaDescription.java
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.util.*;
+
+public interface MediaDescription {
+ String encode();
+ Vector getAttributeFields();
+ void setAttributeFields(Vector a);
+ Media getMedia();
+ void setMedia(Media media) throws SdpException;
+ Info getInfo();
+ void setInfo(Info i) throws SdpException;
+ Connection getConnection();
+ void setConnection(Connection conn) throws SdpException;
+ Vector getBandwidths(boolean create);
+ void setBandwidths(Vector bandwidths) throws SdpException;
+ int getBandwidth(String name) throws SdpParseException;
+ void setBandwidth(String name, int value) throws SdpException;
+ void removeBandwidth(String name);
+ Key getKey();
+ void setKey(Key key) throws SdpException;
+ Vector getAttributes(boolean create);
+ void setAttributes(Vector attributes) throws SdpException;
+ String getAttribute(String name) throws SdpParseException;
+ void setAttribute(String name, String value) throws SdpException;
+ void setDuplexity(String duplexity);
+ void removeAttribute(String name);
+ Vector getMimeTypes() throws SdpException;
+ Vector getMimeParameters() throws SdpException;
+ void setPreconditionFields(Vector precondition) throws SdpException;
+ Vector getPreconditionFields();
+}
diff --git a/java/javax/sdp/Origin.java b/java/javax/sdp/Origin.java
new file mode 100644
index 0000000..a3994e7
--- /dev/null
+++ b/java/javax/sdp/Origin.java
@@ -0,0 +1,45 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface Origin {
+ String getUsername() throws SdpParseException;
+ long getSessId();
+ String getSessIdAsString();
+ long getSessVersion();
+ String getSessVersionAsString();
+ String getNettype();
+ String getAddrtype();
+ void setSessId(long s);
+ void setSessionId(String sessId);
+ void setSessVersion(long s);
+ void setSessVersion(String s);
+ void setNettype(String n);
+ void setAddrtype(String a);
+ void setUsername(String user) throws SdpException;
+ long getSessionId() throws SdpParseException;
+ void setSessionId(long id) throws SdpException;
+ long getSessionVersion() throws SdpParseException;
+ void setSessionVersion(long version) throws SdpException;
+ String getAddress() throws SdpParseException;
+ String getAddressType() throws SdpParseException;
+ String getNetworkType() throws SdpParseException;
+ void setAddressType(String type) throws SdpException;
+ void setNetworkType(String type) throws SdpException;
+ String encode();
+ Object clone();
+}
diff --git a/java/javax/sdp/Phone.java b/java/javax/sdp/Phone.java
new file mode 100644
index 0000000..c8e52ba
--- /dev/null
+++ b/java/javax/sdp/Phone.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface Phone {
+ String getName();
+ String getPhoneNumber();
+ void setName(String name);
+ void setPhoneNumber(String phoneNumber);
+ String getValue() throws SdpParseException;
+ void setValue(String value) throws SdpException;
+ String encode();
+}
diff --git a/java/javax/sdp/RepeatTime.java b/java/javax/sdp/RepeatTime.java
new file mode 100644
index 0000000..0ab304a
--- /dev/null
+++ b/java/javax/sdp/RepeatTime.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.util.*;
+
+public interface RepeatTime {
+ LinkedList getOffsets();
+ int getRepeatInterval() throws SdpParseException;
+ int getActiveDuration() throws SdpParseException;
+ int[] getOffsetArray() throws SdpParseException;
+ void setOffsetArray(int[] offsets) throws SdpException;
+ boolean getTypedTime() throws SdpParseException;
+ void setTypedTime(boolean typedTime);
+ String encode();
+ Object clone();
+}
diff --git a/java/javax/sdp/SDPFieldNames.java b/java/javax/sdp/SDPFieldNames.java
new file mode 100644
index 0000000..7cb608f
--- /dev/null
+++ b/java/javax/sdp/SDPFieldNames.java
@@ -0,0 +1,23 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface SDPFieldNames {
+ abstract String encode();
+ boolean equals(Object that);
+ boolean match(Object other);
+}
diff --git a/java/javax/sdp/SdpConstants.java b/java/javax/sdp/SdpConstants.java
new file mode 100644
index 0000000..6334773
--- /dev/null
+++ b/java/javax/sdp/SdpConstants.java
@@ -0,0 +1,22 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public class SdpConstants {
+
+ public static final String RTPMAP = "rtpmap";
+}
diff --git a/java/javax/sdp/SdpException.java b/java/javax/sdp/SdpException.java
new file mode 100644
index 0000000..58abcfd
--- /dev/null
+++ b/java/javax/sdp/SdpException.java
@@ -0,0 +1,31 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.lang.*;
+
+public class SdpException extends Exception {
+
+ public SdpException() {}
+ public SdpException(String msg) {
+ super(msg);
+ }
+ public SdpException(String msg, Exception ex) {
+ super(msg, ex);
+ }
+
+}
diff --git a/java/javax/sdp/SdpFactory.java b/java/javax/sdp/SdpFactory.java
new file mode 100644
index 0000000..6a7ecca
--- /dev/null
+++ b/java/javax/sdp/SdpFactory.java
@@ -0,0 +1,33 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.util.*;
+
+public class SdpFactory {
+ static final long POSIX_TIME_OFFSET = (70*365 + 70/4) * 86400L;
+ public SdpFactory() {}
+
+ public static Date getDateFromNtp(long time) {
+ return new Date((time - POSIX_TIME_OFFSET) * 1000);
+ }
+
+ public static long getNtpTime(Date time) {
+ if (time == null) return -1;
+ return time.getTime() / 1000 + POSIX_TIME_OFFSET;
+ }
+}
diff --git a/java/javax/sdp/SdpParseException.java b/java/javax/sdp/SdpParseException.java
new file mode 100644
index 0000000..4ce41d7
--- /dev/null
+++ b/java/javax/sdp/SdpParseException.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public class SdpParseException extends SdpException {
+ public SdpParseException() {}
+ public SdpParseException(String msg) {
+ super(msg);
+ }
+ public SdpParseException(String msg, Exception ex) {
+ super(msg, ex);
+ }
+}
diff --git a/java/javax/sdp/SessionDescription.java b/java/javax/sdp/SessionDescription.java
new file mode 100644
index 0000000..f1c8abb
--- /dev/null
+++ b/java/javax/sdp/SessionDescription.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.util.*;
+
+public interface SessionDescription {
+ Version getVersion();
+ void setVersion(Version v) throws SdpException;
+ Origin getOrigin();
+ void setOrigin(Origin origin) throws SdpException;
+ SessionName getSessionName();
+ void setSessionName(SessionName sessionName) throws SdpException;
+ Info getInfo();
+ void setInfo(Info i) throws SdpException;
+ URI getURI();
+ void setURI(URI uri) throws SdpException;
+ Vector getEmails(boolean create) throws SdpParseException;
+ void setEmails(Vector emails) throws SdpException;
+ Vector getPhones(boolean create) throws SdpException;
+ void setPhones(Vector phones) throws SdpException;
+ Vector getTimeDescriptions(boolean create) throws SdpException;
+ void setTimeDescriptions(Vector times) throws SdpException;
+ Vector getZoneAdjustments(boolean create) throws SdpException;
+ void setZoneAdjustments(Vector zoneAdjustments) throws SdpException;
+ Connection getConnection();
+ void setConnection(Connection conn) throws SdpException;
+ Vector getBandwidths(boolean create);
+ void setBandwidths(Vector bandwidthList) throws SdpException;
+ int getBandwidth(String name) throws SdpParseException;
+ void setBandwidth(String name, int value) throws SdpException;
+ void removeBandwidth(String name);
+ Key getKey();
+ void setKey(Key key) throws SdpException;
+ String getAttribute(String name) throws SdpParseException;
+ Vector getAttributes(boolean create);
+ void removeAttribute(String name);
+ void setAttribute(String name, String value) throws SdpException;
+ void setAttributes(Vector attributes) throws SdpException;
+ Vector getMediaDescriptions(boolean create) throws SdpException;
+}
diff --git a/java/javax/sdp/SessionName.java b/java/javax/sdp/SessionName.java
new file mode 100644
index 0000000..81bbe26
--- /dev/null
+++ b/java/javax/sdp/SessionName.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface SessionName {
+ String getSessionName();
+ void setSessionName(String s);
+ String getValue() throws SdpParseException;
+ void setValue(String value) throws SdpException;
+ String encode();
+ Object clone();
+}
diff --git a/java/javax/sdp/Time.java b/java/javax/sdp/Time.java
new file mode 100644
index 0000000..7eb7cc3
--- /dev/null
+++ b/java/javax/sdp/Time.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.util.*;
+
+public interface Time {
+ long getStartTime();
+ long getStopTime();
+ void setStartTime(long startTime);
+ void setStopTime(long stopTime);
+ Date getStart() throws SdpParseException;
+ Date getStop() throws SdpParseException;
+ void setStop(Date stop) throws SdpException;
+ void setStart(Date start) throws SdpException;
+ boolean getTypedTime();
+ void setTypedTime(boolean typedTime);
+ boolean isZero();
+ void setZero();
+ Object clone();
+ String encode();
+}
diff --git a/java/javax/sdp/TimeDescription.java b/java/javax/sdp/TimeDescription.java
new file mode 100644
index 0000000..189457f
--- /dev/null
+++ b/java/javax/sdp/TimeDescription.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.util.*;
+
+public interface TimeDescription {
+ Time getTime();
+ void setTime(Time timeField) throws SdpException;
+ Vector getRepeatTimes(boolean create);
+ void setRepeatTimes(Vector repeatTimes) throws SdpException;
+}
diff --git a/java/javax/sdp/TimeZoneAdjustment.java b/java/javax/sdp/TimeZoneAdjustment.java
new file mode 100644
index 0000000..a2efcda
--- /dev/null
+++ b/java/javax/sdp/TimeZoneAdjustment.java
@@ -0,0 +1,28 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.util.*;
+
+public interface TimeZoneAdjustment {
+ String encode();
+ Hashtable getZoneAdjustments(boolean create) throws SdpParseException;
+ void setZoneAdjustments(Hashtable map) throws SdpException;
+ void setTypedTime(boolean typedTime);
+ boolean getTypedTime();
+ Object clone();
+}
diff --git a/java/javax/sdp/URI.java b/java/javax/sdp/URI.java
new file mode 100644
index 0000000..7cf5753
--- /dev/null
+++ b/java/javax/sdp/URI.java
@@ -0,0 +1,27 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+import java.net.URL;
+
+public interface URI {
+ String getURI();
+ void setURI(String uri);
+ URL get();
+ void set(URL uri);
+ String encode();
+}
diff --git a/java/javax/sdp/Version.java b/java/javax/sdp/Version.java
new file mode 100644
index 0000000..563766a
--- /dev/null
+++ b/java/javax/sdp/Version.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright (C) 2010 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package javax.sdp;
+
+public interface Version {
+ int getProtoVersion();
+ void setProtoVersion(int pv);
+ int getVersion() throws SdpParseException;
+ void setVersion(int value) throws SdpException;
+ String encode();
+ Object clone();
+}