Android Open Source - sony-camera-remote-java Method Types Entity






From Project

Back to project page sony-camera-remote-java.

License

The source code is released under:

Apache License

If you think the Android project sony-camera-remote-java listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.praetoriandroid.cameraremote.rpc;
//w  w  w. ja  v  a2  s  .  com
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@SuppressWarnings("UnusedDeclaration")
public class MethodTypesEntity {

    private String name;

    private List<AbstractClass> parameterTypes;

    private List<AbstractClass> responseTypes;

    private String version;

    public MethodTypesEntity(String name, List<AbstractClass> parameterTypes, List<AbstractClass> responseTypes, String version) {
        this.name = name;
        this.parameterTypes = parameterTypes;
        this.responseTypes = responseTypes;
        this.version = version;
    }

    public String getName() {
        return name;
    }

    public List<AbstractClass> getParameterTypes() {
        return parameterTypes;
    }

    public List<AbstractClass> getResponseTypes() {
        return responseTypes;
    }

    public String getVersion() {
        return version;
    }

    @Override
    public String toString() {
        return '{' + name + '(' + version + "): " + parameterTypes + ", " + responseTypes + '}';
    }

    public interface AbstractClass {
        /**
         * @return <code>true</code> if instance represents one of <code>boolean</code>, <code>int</code>,
         * <code>double</code>, {@link String} or array of them,
         * that could be obtained with {@link #getSimpleClass()};
         * <br/>
         * or <code>false</code> if instance represents a compound class description,
         * that could be obtained with {@link #getClassDescription()}.
         */
        public boolean isSimpleClass();

        /**
         * @return <code>true</code> if instance represents an array of compound objects.
         * In this case {@link #isSimpleClass()} returns <code>false</code>.
         */
        public boolean isClassDescriptionArray();

        /**
         * @return Class that represents one of simple classes (see {@link #isSimpleClass()}).
         * @throws IllegalStateException if {@link #isSimpleClass()} returns <code>false</code>.
         */
        public Class<?> getSimpleClass() throws IllegalStateException;

        /**
         * @return Class
         * @throws IllegalStateException if {@link #isSimpleClass()} returns <code>true</code>.
         */
        public Map<String, Class<?>> getClassDescription() throws IllegalStateException;
    }

    public static class SimpleClass implements AbstractClass {

        private Class<?> clazz;

        public SimpleClass(Class<?> clazz) {
            this.clazz = clazz;
        }

        @Override
        public boolean isSimpleClass() {
            return true;
        }

        @Override
        public boolean isClassDescriptionArray() {
            return false;
        }

        @Override
        public Class<?> getSimpleClass() throws IllegalStateException {
            return clazz;
        }

        @Override
        public Map<String, Class<?>> getClassDescription() throws IllegalStateException {
            throw new IllegalStateException();
        }

        @Override
        public String toString() {
            return clazz.getSimpleName();
        }
    }

    public static class ClassDescription extends HashMap<String, Class<?>> implements AbstractClass {
        @Override
        public boolean isSimpleClass() {
            return false;
        }

        @Override
        public boolean isClassDescriptionArray() {
            return false;
        }

        @Override
        public Class<?> getSimpleClass() throws IllegalStateException {
            throw new IllegalStateException();
        }

        @Override
        public Map<String, Class<?>> getClassDescription() throws IllegalStateException {
            return this;
        }
    }

    public static class ClassDescriptionArray extends ClassDescription {

        @Override
        public boolean isClassDescriptionArray() {
            return true;
        }

        @Override
        public String toString() {
             return '[' + super.toString() + ']';
        }
    }
}




Java Source Code List

com.praetoriandroid.cameraremote.BadHttpStatusException.java
com.praetoriandroid.cameraremote.DeviceDescription.java
com.praetoriandroid.cameraremote.HttpClient.java
com.praetoriandroid.cameraremote.InvalidDataFormatException.java
com.praetoriandroid.cameraremote.LiveViewDisconnectedException.java
com.praetoriandroid.cameraremote.LiveViewFetcher.java
com.praetoriandroid.cameraremote.Logger.java
com.praetoriandroid.cameraremote.ParseException.java
com.praetoriandroid.cameraremote.RpcClient.java
com.praetoriandroid.cameraremote.RpcException.java
com.praetoriandroid.cameraremote.ServiceNotSupportedException.java
com.praetoriandroid.cameraremote.SsdpClient.java
com.praetoriandroid.cameraremote.SsdpException.java
com.praetoriandroid.cameraremote.app.LiveView.java
com.praetoriandroid.cameraremote.app.MainActivity.java
com.praetoriandroid.cameraremote.app.Rpc.java
com.praetoriandroid.cameraremote.app.SelfTimerSelector.java
com.praetoriandroid.cameraremote.app.ThisApp.java
com.praetoriandroid.cameraremote.rpc.ActTakePictureRequest.java
com.praetoriandroid.cameraremote.rpc.ActTakePictureResponse.java
com.praetoriandroid.cameraremote.rpc.AwaitTakePictureRequest.java
com.praetoriandroid.cameraremote.rpc.BaseRequest.java
com.praetoriandroid.cameraremote.rpc.BaseResponse.java
com.praetoriandroid.cameraremote.rpc.CustomizableEntity.java
com.praetoriandroid.cameraremote.rpc.EventEntity.java
com.praetoriandroid.cameraremote.rpc.GetApplicationInfoRequest.java
com.praetoriandroid.cameraremote.rpc.GetApplicationInfoResponse.java
com.praetoriandroid.cameraremote.rpc.GetAvailableApiListRequest.java
com.praetoriandroid.cameraremote.rpc.GetAvailableApiListResponse.java
com.praetoriandroid.cameraremote.rpc.GetAvailableSelfTimerRequest.java
com.praetoriandroid.cameraremote.rpc.GetAvailableSelfTimerResponse.java
com.praetoriandroid.cameraremote.rpc.GetEventRequest.java
com.praetoriandroid.cameraremote.rpc.GetEventResponse.java
com.praetoriandroid.cameraremote.rpc.GetExposureModeRequest.java
com.praetoriandroid.cameraremote.rpc.GetMethodTypesRequest.java
com.praetoriandroid.cameraremote.rpc.GetMethodTypesResponse.java
com.praetoriandroid.cameraremote.rpc.GetSelfTimerRequest.java
com.praetoriandroid.cameraremote.rpc.GetSupportedSelfTimerRequest.java
com.praetoriandroid.cameraremote.rpc.GetSupportedSelfTimerResponse.java
com.praetoriandroid.cameraremote.rpc.GetVersionsRequest.java
com.praetoriandroid.cameraremote.rpc.GetVersionsResponse.java
com.praetoriandroid.cameraremote.rpc.IllegalResultSizeException.java
com.praetoriandroid.cameraremote.rpc.MethodTypesEntity.java
com.praetoriandroid.cameraremote.rpc.RpcMethod.java
com.praetoriandroid.cameraremote.rpc.SetSelfTimerRequest.java
com.praetoriandroid.cameraremote.rpc.SimpleResponse.java
com.praetoriandroid.cameraremote.rpc.StartLiveViewRequest.java
com.praetoriandroid.cameraremote.rpc.StartLiveViewResponse.java
com.praetoriandroid.cameraremote.rpc.StartMovieRecRequest.java
com.praetoriandroid.cameraremote.rpc.StartRecModeRequest.java
com.praetoriandroid.cameraremote.rpc.StopLiveviewRequest.java
com.praetoriandroid.cameraremote.rpc.StopMovieRecRequest.java
com.praetoriandroid.cameraremote.rpc.StopMovieRecResponse.java
com.praetoriandroid.cameraremote.rpc.StopRecModeRequest.java
com.praetoriandroid.cameraremote.rpc.ValidationException.java
com.praetoriandroid.cameraremote.rpc._DummyResponse.java
com.praetoriandroid.cameraremote.tool.Cache.java
com.praetoriandroid.cameraremote.tool.RemoteControl.java
com.praetoriandroid.widget.ItemViewCreator.java
com.praetoriandroid.widget.RadialFreeSpace.java
com.praetoriandroid.widget.RadialSelector.java