Commit 9e67bca6 authored by Petri Hintukainen's avatar Petri Hintukainen

Add missing javax.microedition.io interfaces

parent 2b0b711a
Pipeline #5085 passed with stage
in 2 minutes and 15 seconds
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
public interface CommConnection extends StreamConnection {
public abstract int getBaudRate();
public abstract int setBaudRate(int baudrate);
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface Connection {
public abstract void close() throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public class ConnectionNotFoundException extends IOException {
public ConnectionNotFoundException() {
}
public ConnectionNotFoundException(String s) {
super(s);
}
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import org.videolan.io.ConnectorImpl;
public class Connector {
public static final int READ = 1;
public static final int WRITE = 2;
public static final int READ_WRITE = 3;
public static Connection open(String name) throws IOException {
return open(name, READ_WRITE);
}
public static Connection open(String name, int mode) throws IOException {
return open(name, mode, false);
}
public static Connection open(String name, int mode, boolean timeouts) throws IOException {
if (mode != READ && mode != WRITE && mode != READ_WRITE) {
throw new IllegalArgumentException("invalid mode");
}
if (name == null) {
throw new IllegalArgumentException("null URL");
}
if (name.equals("")) {
throw new IllegalArgumentException("empty URL");
}
return ConnectorImpl.open(name, mode, timeouts);
}
public static DataInputStream openDataInputStream(String name) throws IOException {
InputConnection ic = null;
try {
ic = (InputConnection)open(name, READ);
} catch (ClassCastException cce) {
throw new IllegalArgumentException(name);
}
try {
return ic.openDataInputStream();
} finally {
ic.close();
}
}
public static DataOutputStream openDataOutputStream(String name) throws IOException {
OutputConnection oc = null;
try {
oc = (OutputConnection)open(name, WRITE);
} catch (ClassCastException cce) {
throw new IllegalArgumentException(name);
}
try {
return oc.openDataOutputStream();
} finally {
oc.close();
}
}
public static InputStream openInputStream(String name) throws IOException {
return openDataInputStream(name);
}
public static OutputStream openOutputStream(String name)throws IOException {
return openDataOutputStream(name);
}
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
public interface ContentConnection extends StreamConnection {
public abstract String getEncoding();
public abstract long getLength();
public abstract String getType();
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
public interface Datagram extends DataInput, DataOutput {
public abstract String getAddress();
public abstract byte[] getData();
public abstract int getLength();
public abstract int getOffset();
public abstract void reset();
public abstract void setAddress(String addr) throws IOException;
public abstract void setAddress(Datagram dgram);
public abstract void setData(byte[] data, int offset, int len);
public abstract void setLength(int len);
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface DatagramConnection extends Connection {
public abstract int getMaximumLength() throws IOException;
public abstract int getNominalLength() throws IOException;
public abstract Datagram newDatagram(int size) throws IOException;
public abstract Datagram newDatagram(int size, String addr) throws IOException;
public abstract Datagram newDatagram(byte[] buf, int size) throws IOException;
public abstract Datagram newDatagram(byte[] buf, int size, String addr) throws IOException;
public abstract void receive(Datagram dgram) throws IOException;
public abstract void send(Datagram dgram) throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface HttpConnection extends ContentConnection {
public static final String HEAD = "HEAD";
public static final String GET = "GET";
public static final String POST = "POST";
public static final int HTTP_OK = 200;
public static final int HTTP_CREATED = 201;
public static final int HTTP_ACCEPTED = 202;
public static final int HTTP_NOT_AUTHORITATIVE = 203;
public static final int HTTP_NO_CONTENT = 204;
public static final int HTTP_RESET = 205;
public static final int HTTP_PARTIAL = 206;
public static final int HTTP_MULT_CHOICE = 300;
public static final int HTTP_MOVED_PERM = 301;
public static final int HTTP_MOVED_TEMP = 302;
public static final int HTTP_SEE_OTHER = 303;
public static final int HTTP_NOT_MODIFIED = 304;
public static final int HTTP_USE_PROXY = 305;
public static final int HTTP_TEMP_REDIRECT = 307;
public static final int HTTP_BAD_REQUEST = 400;
public static final int HTTP_UNAUTHORIZED = 401;
public static final int HTTP_PAYMENT_REQUIRED = 402;
public static final int HTTP_FORBIDDEN = 403;
public static final int HTTP_NOT_FOUND = 404;
public static final int HTTP_BAD_METHOD = 405;
public static final int HTTP_NOT_ACCEPTABLE = 406;
public static final int HTTP_PROXY_AUTH = 407;
public static final int HTTP_CLIENT_TIMEOUT = 408;
public static final int HTTP_CONFLICT = 409;
public static final int HTTP_GONE = 410;
public static final int HTTP_LENGTH_REQUIRED = 411;
public static final int HTTP_PRECON_FAILED = 412;
public static final int HTTP_ENTITY_TOO_LARGE = 413;
public static final int HTTP_REQ_TOO_LONG = 414;
public static final int HTTP_UNSUPPORTED_TYPE = 415;
public static final int HTTP_UNSUPPORTED_RANGE = 416;
public static final int HTTP_EXPECT_FAILED = 417;
public static final int HTTP_INTERNAL_ERROR = 500;
public static final int HTTP_NOT_IMPLEMENTED = 501;
public static final int HTTP_BAD_GATEWAY = 502;
public static final int HTTP_UNAVAILABLE = 503;
public static final int HTTP_GATEWAY_TIMEOUT = 504;
public static final int HTTP_VERSION = 505;
public abstract long getDate() throws IOException;
public abstract long getExpiration() throws IOException;
public abstract String getFile();
public abstract String getHeaderField(int n) throws IOException;
public abstract String getHeaderField(String name) throws IOException;
public abstract long getHeaderFieldDate(String name, long def) throws IOException;
public abstract int getHeaderFieldInt(String name, int def) throws IOException;
public abstract String getHeaderFieldKey(int n) throws IOException;
public abstract String getHost();
public abstract long getLastModified() throws IOException;
public abstract int getPort();
public abstract String getProtocol();
public abstract String getQuery();
public abstract String getRef();
public abstract String getRequestMethod();
public abstract String getRequestProperty(String key);
public abstract int getResponseCode() throws IOException;
public abstract String getResponseMessage() throws IOException;
public abstract String getURL();
public abstract void setRequestMethod(String method) throws IOException;
public abstract void setRequestProperty(String key, String value) throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface HttpsConnection extends HttpConnection {
public abstract int getPort();
public abstract SecurityInfo getSecurityInfo() throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;
public interface InputConnection extends Connection {
public abstract DataInputStream openDataInputStream() throws IOException;
public abstract InputStream openInputStream() throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.OutputStream;
public interface OutputConnection extends Connection {
public abstract DataOutputStream openDataOutputStream() throws IOException;
public abstract OutputStream openOutputStream() throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface SecureConnection extends SocketConnection {
public abstract SecurityInfo getSecurityInfo() throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import javax.microedition.pki.Certificate;
public interface SecurityInfo {
public abstract String getCipherSuite();
public abstract String getProtocolName();
public abstract String getProtocolVersion();
public abstract Certificate getServerCertificate();
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface ServerSocketConnection extends StreamConnectionNotifier {
public abstract String getLocalAddress() throws IOException;
public abstract int getLocalPort() throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface SocketConnection extends StreamConnection {
public static final byte DELAY = 0;
public static final byte LINGER = 1;
public static final byte KEEPALIVE = 2;
public static final byte RCVBUF = 3;
public static final byte SNDBUF = 4;
public abstract String getAddress() throws IOException;
public abstract String getLocalAddress() throws IOException;
public abstract int getLocalPort() throws IOException;
public abstract int getPort() throws IOException;
public abstract int getSocketOption(byte option) throws IOException;
public abstract void setSocketOption(byte option, int value) throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
public interface StreamConnection extends InputConnection, OutputConnection {
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface StreamConnectionNotifier extends Connection {
public abstract StreamConnection acceptAndOpen() throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.io;
import java.io.IOException;
public interface UDPDatagramConnection extends DatagramConnection {
public abstract String getLocalAddress() throws IOException;
public abstract int getLocalPort() throws IOException;
}
/*
* This file is part of libbluray
* Copyright (C) 2019 VideoLAN
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see
* <http://www.gnu.org/licenses/>.
*/
package javax.microedition.pki;
public interface Certificate {
public abstract String getIssuer();
public abstract long getNotAfter();
public abstract long getNotBefore();
public abstract String getSerialNumber();
public abstract String getSigAlgName();
public abstract String getSubject();
public abstract String getType();