All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.objectfabric.MethodCallBase Maven / Gradle / Ivy

/**
 * This file is part of ObjectFabric (http://objectfabric.org).
 *
 * ObjectFabric is licensed under the Apache License, Version 2.0, the terms
 * of which may be found at http://www.apache.org/licenses/LICENSE-2.0.html.
 * 
 * Copyright ObjectFabric Inc.
 * 
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 */

package org.objectfabric;

//==============================================================================
//                                                                              
//  THIS FILE HAS BEEN GENERATED BY OBJECTFABRIC                                
//                                                                              
//==============================================================================

@SuppressWarnings({ "hiding", "unchecked", "static-access", "unused", "cast", "rawtypes" })
abstract class MethodCallBase extends org.objectfabric.TGenerated {

    protected MethodCallBase(org.objectfabric.Resource resource, org.objectfabric.TObject.Version shared, int length, org.objectfabric.TGenerated target) {
        super(resource, shared, FIELD_COUNT);

        ((Version) shared)._target = target;

        if (target != null)
            ((Version) shared).setBit(TARGET_INDEX);
    }

    public final org.objectfabric.TGenerated target() {
        Version v = (Version) shared_();
        return v._target;
    }

    public final boolean isDone() {
        org.objectfabric.TObject.Transaction outer = current_();
        org.objectfabric.TObject.Transaction inner = startRead_(outer);
        Version v = (Version) getVersion32_(inner, IS_DONE_INDEX);
        boolean value = v != null ? v._isDone : false;
        endRead_(outer, inner);
        return value;
    }

    public final void isDone(boolean value) {
        org.objectfabric.TObject.Transaction outer = current_();
        org.objectfabric.TObject.Transaction inner = startWrite_(outer);
        Version v = (Version) getOrCreateVersion_(inner);
        v._isDone = value;
        v.setBit(IS_DONE_INDEX);
        endWrite_(outer, inner);
    }

    protected final java.lang.Object result_() {
        org.objectfabric.TObject.Transaction outer = current_();
        org.objectfabric.TObject.Transaction inner = startRead_(outer);
        Version v = (Version) getVersion32_(inner, RESULT__INDEX);
        java.lang.Object value = v != null ? v._result_ : null;
        endRead_(outer, inner);
        return value;
    }

    protected final void result_(java.lang.Object value) {
        if (value instanceof org.objectfabric.TObject && ((org.objectfabric.TObject) value).resource() != resource())
            wrongResource_();

        org.objectfabric.TObject.Transaction outer = current_();
        org.objectfabric.TObject.Transaction inner = startWrite_(outer);
        Version v = (Version) getOrCreateVersion_(inner);
        v._result_ = value;
        v.setBit(RESULT__INDEX);
        endWrite_(outer, inner);
    }

    public final java.lang.String exception() {
        org.objectfabric.TObject.Transaction outer = current_();
        org.objectfabric.TObject.Transaction inner = startRead_(outer);
        Version v = (Version) getVersion32_(inner, EXCEPTION_INDEX);
        java.lang.String value = v != null ? v._exception : null;
        endRead_(outer, inner);
        return value;
    }

    public final void exception(java.lang.String value) {
        org.objectfabric.TObject.Transaction outer = current_();
        org.objectfabric.TObject.Transaction inner = startWrite_(outer);
        Version v = (Version) getOrCreateVersion_(inner);
        v._exception = value;
        v.setBit(EXCEPTION_INDEX);
        endWrite_(outer, inner);
    }

    public static final int TARGET_INDEX = 0;

    public static final java.lang.String TARGET_NAME = "target";

    public static final org.objectfabric.TType TARGET_TYPE = org.objectfabric.TGenerated.TYPE;

    public static final int IS_DONE_INDEX = 1;

    public static final java.lang.String IS_DONE_NAME = "isDone";

    public static final org.objectfabric.TType IS_DONE_TYPE = org.objectfabric.Immutable.BOOLEAN.type();

    protected static final int RESULT__INDEX = 2;

    protected static final java.lang.String RESULT__NAME = "result_";

    protected static final org.objectfabric.TType RESULT__TYPE = org.objectfabric.TType.OBJECT;

    public static final int EXCEPTION_INDEX = 3;

    public static final java.lang.String EXCEPTION_NAME = "exception";

    public static final org.objectfabric.TType EXCEPTION_TYPE = org.objectfabric.Immutable.STRING.type();

    public static final int FIELD_COUNT = 4;

    public static java.lang.String fieldName(int index) {
        switch (index) {
            case TARGET_INDEX:
                return TARGET_NAME;
            case IS_DONE_INDEX:
                return IS_DONE_NAME;
            case RESULT__INDEX:
                return RESULT__NAME;
            case EXCEPTION_INDEX:
                return EXCEPTION_NAME;
            default:
                throw new IllegalArgumentException();
        }
    }

    public static org.objectfabric.TType fieldType(int index) {
        switch (index) {
            case TARGET_INDEX:
                return TARGET_TYPE;
            case IS_DONE_INDEX:
                return IS_DONE_TYPE;
            case RESULT__INDEX:
                return RESULT__TYPE;
            case EXCEPTION_INDEX:
                return EXCEPTION_TYPE;
            default:
                throw new IllegalArgumentException();
        }
    }

    protected static class Version extends org.objectfabric.TIndexed.Version32 {

        public org.objectfabric.TGenerated _target;

        public boolean _isDone;

        public java.lang.Object _result_;

        public java.lang.String _exception;

        private static final int _readOnlys;

        static {
            int readOnlys = 0;
            readOnlys = setBit(readOnlys, TARGET_INDEX);
            _readOnlys = readOnlys;
        }

        public Version(int length) {
            super(length);
        }

        @Override
        public java.lang.String getFieldName(int index) {
            return fieldName(index);
        }

        @Override
        public org.objectfabric.TType getFieldType(int index) {
            return fieldType(index);
        }

        @Override
        public java.lang.Object getAsObject(int index) {
            switch (index) {
                case TARGET_INDEX:
                    return _target;
                case IS_DONE_INDEX:
                    return _isDone;
                case RESULT__INDEX:
                    return _result_;
                case EXCEPTION_INDEX:
                    return _exception;
                default:
                    return super.getAsObject(index);
            }
        }

        @Override
        public void setAsObject(int index, java.lang.Object value) {
            switch (index) {
                case TARGET_INDEX:
                    _target = (org.objectfabric.TGenerated) value;
                    break;
                case IS_DONE_INDEX:
                    _isDone = ((java.lang.Boolean) value).booleanValue();
                    break;
                case RESULT__INDEX:
                    _result_ = value;
                    break;
                case EXCEPTION_INDEX:
                    _exception = (java.lang.String) value;
                    break;
                default:
                    super.setAsObject(index, value);
                    break;
            }
        }

        @Override
        public void merge(org.objectfabric.TObject.Version next) {
            MethodCallBase.Version source = (MethodCallBase.Version) next;

            if (source.hasBits()) {
                if (source.getBit(TARGET_INDEX))
                    _target = source._target;

                if (source.getBit(IS_DONE_INDEX))
                    _isDone = source._isDone;

                if (source.getBit(RESULT__INDEX))
                    _result_ = source._result_;

                if (source.getBit(EXCEPTION_INDEX))
                    _exception = source._exception;
            }

            super.merge(next);
        }

        @Override
        public int getReadOnlys() {
            return _readOnlys;
        }

        @Override
        public void writeWrite(org.objectfabric.Writer writer, int index) {
            if (writer.interrupted())
                writer.resume();

            switch (index) {
                case TARGET_INDEX: {
                    writer.writeTObject(_target);

                    if (writer.interrupted()) {
                        writer.interrupt(null);
                        return;
                    }

                    break;
                }
                case IS_DONE_INDEX: {
                    if (!writer.canWriteBoolean()) {
                        writer.interrupt(null);
                        return;
                    }

                    writer.writeBoolean(_isDone);
                    break;
                }
                case RESULT__INDEX: {
                    writer.writeObject(_result_);

                    if (writer.interrupted()) {
                        writer.interrupt(null);
                        return;
                    }

                    break;
                }
                case EXCEPTION_INDEX: {
                    writer.writeString(_exception);

                    if (writer.interrupted()) {
                        writer.interrupt(null);
                        return;
                    }

                    break;
                }
                default: {
                    super.writeWrite(writer, index);

                    if (writer.interrupted()) {
                        writer.interrupt(null);
                        return;
                    }

                    break;
                }
            }
        }

        @Override
        public void readWrite(org.objectfabric.Reader reader, int index, java.lang.Object[] versions) {
            if (reader.interrupted())
                reader.resume();

            switch (index) {
                case TARGET_INDEX: {
                    java.lang.Object value = reader.readTObject();

                    if (reader.interrupted()) {
                        reader.interrupt(null);
                        return;
                    }

                    for (int i = versions.length - 1; i >= 0; i--) {
                        java.lang.Object v = value instanceof org.objectfabric.TObject[] ? ((org.objectfabric.TObject[]) value)[i] : value;
                        ((Version) versions[i])._target = (org.objectfabric.TGenerated) v;
                    }

                    break;
                }
                case IS_DONE_INDEX: {
                    if (!reader.canReadBoolean()) {
                        reader.interrupt(null);
                        return;
                    }

                    boolean value = reader.readBoolean();

                    for (int i = versions.length - 1; i >= 0; i--)
                        ((Version) versions[i])._isDone = value;

                    break;
                }
                case RESULT__INDEX: {
                    java.lang.Object value = reader.readObject();

                    if (reader.interrupted()) {
                        reader.interrupt(null);
                        return;
                    }

                    for (int i = versions.length - 1; i >= 0; i--) {
                        java.lang.Object v = value instanceof org.objectfabric.TObject[] ? ((org.objectfabric.TObject[]) value)[i] : value;
                        ((Version) versions[i])._result_ = (java.lang.Object) v;
                    }

                    break;
                }
                case EXCEPTION_INDEX: {
                    java.lang.String value = reader.readString();

                    if (reader.interrupted()) {
                        reader.interrupt(null);
                        return;
                    }

                    for (int i = versions.length - 1; i >= 0; i--)
                        ((Version) versions[i])._exception = value;

                    break;
                }
                default: {
                    super.readWrite(reader, index, versions);

                    if (reader.interrupted()) {
                        reader.interrupt(null);
                        return;
                    }

                    break;
                }
            }
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy