//
// Java generated by the OrbixWeb IDL compiler 
//

package shared;













public abstract class _SequenceTestSkeleton 
    extends org.omg.CORBA.DynamicImplementation 
{
    protected _SequenceTestSkeleton()
    {
        super();
    }

    public String[] _ids()
    {
        return _SequenceTestStub._interfaces;
    }
    public void invoke(org.omg.CORBA.ServerRequest _req)
    {
        _invoke(_req, this);
    }
    public static void _invoke(org.omg.CORBA.ServerRequest _req,_SequenceTestSkeleton _obj)
    {
        String _opName = _req.op_name();
        org.omg.CORBA.Any _ret = _obj._orb().create_any();
        org.omg.CORBA.NVList _nvl = null;

        if (_opName.equals("_get_attribute_short_seq"))
        {
            _ret = _obj._orb().create_any();
            _req.params(_nvl);
            shared.SequenceTestPackage.sequence_shortHolder _retHolder = new shared.SequenceTestPackage.sequence_shortHolder();
            _retHolder.value = _obj.attribute_short_seq();


            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);
            return;
        }
        if (_opName.equals("_set_attribute_short_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any value = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_shortHolder value_ = new shared.SequenceTestPackage.sequence_shortHolder();
            value.insert_Streamable(value_);
            _nvl.add_value(null, value, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);
            //--- _obj.attribute_short_seq(shared.SequenceTestPackage.sequence_shortHelper.extract(value));
            _obj.attribute_short_seq(value_.value); //+++

            return;
        }
        if (_opName.equals("check_attribute_short_seq"))
        {
            _req.params(_nvl);

            try {
                _obj.check_attribute_short_seq();


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("in_parameter_short_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_shortHolder seq_ = new shared.SequenceTestPackage.sequence_shortHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);

            try {
                _obj.in_parameter_short_seq(seq_.value);


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("inout_parameter_short_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_shortHolder seq_ = new shared.SequenceTestPackage.sequence_shortHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_INOUT.value);
            _req.params(_nvl);

            try {
                _obj.inout_parameter_short_seq(seq_);


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("out_parameter_short_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_shortHolder seq_ = new shared.SequenceTestPackage.sequence_shortHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_OUT.value);
            _req.params(_nvl);

            _obj.out_parameter_short_seq(seq_);


            return;
        }
        if (_opName.equals("result_short_seq"))
        {
            _ret = _obj._orb().create_any();
            _req.params(_nvl);

            shared.SequenceTestPackage.sequence_shortHolder _retHolder = new shared.SequenceTestPackage.sequence_shortHolder();
            _retHolder.value = _obj.result_short_seq();

            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);

            return;
        }
        if (_opName.equals("_get_attribute_struct_seq"))
        {
            _ret = _obj._orb().create_any();
            _req.params(_nvl);
            shared.SequenceTestPackage.sequence_StructureHolder _retHolder = new shared.SequenceTestPackage.sequence_StructureHolder();
            _retHolder.value = _obj.attribute_struct_seq();


            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);
            return;
        }
        if (_opName.equals("_set_attribute_struct_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any value = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_StructureHolder value_ = new shared.SequenceTestPackage.sequence_StructureHolder();
            value.insert_Streamable(value_);
            _nvl.add_value(null, value, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);
            //--- _obj.attribute_struct_seq(shared.SequenceTestPackage.sequence_StructureHelper.extract(value));
            _obj.attribute_struct_seq(value_.value); //+++

            return;
        }
        if (_opName.equals("check_attribute_struct_seq"))
        {
            _req.params(_nvl);

            try {
                _obj.check_attribute_struct_seq();


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("in_parameter_struct_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_StructureHolder seq_ = new shared.SequenceTestPackage.sequence_StructureHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);

            try {
                _obj.in_parameter_struct_seq(seq_.value);


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("inout_parameter_struct_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_StructureHolder seq_ = new shared.SequenceTestPackage.sequence_StructureHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_INOUT.value);
            _req.params(_nvl);

            try {
                _obj.inout_parameter_struct_seq(seq_);


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("out_parameter_struct_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_StructureHolder seq_ = new shared.SequenceTestPackage.sequence_StructureHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_OUT.value);
            _req.params(_nvl);

            _obj.out_parameter_struct_seq(seq_);


            return;
        }
        if (_opName.equals("result_struct_seq"))
        {
            _ret = _obj._orb().create_any();
            _req.params(_nvl);

            shared.SequenceTestPackage.sequence_StructureHolder _retHolder = new shared.SequenceTestPackage.sequence_StructureHolder();
            _retHolder.value = _obj.result_struct_seq();

            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);

            return;
        }
        if (_opName.equals("TestObject_factory"))
        {
            _ret = _obj._orb().create_any();
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any id = _obj._orb().create_any();
            org.omg.CORBA.IntHolderHolder id_ = new org.omg.CORBA.IntHolderHolder();
            id.insert_Streamable(id_);
            _nvl.add_value(null, id, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);

            shared.TestObjectHolder _retHolder = new shared.TestObjectHolder();
            _retHolder.value = _obj.TestObject_factory(id_.value.value);

            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);

            return;
        }
        if (_opName.equals("_get_attribute_object_seq"))
        {
            _ret = _obj._orb().create_any();
            _req.params(_nvl);
            shared.SequenceTestPackage.sequence_TestObjectHolder _retHolder = new shared.SequenceTestPackage.sequence_TestObjectHolder();
            _retHolder.value = _obj.attribute_object_seq();


            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);
            return;
        }
        if (_opName.equals("_set_attribute_object_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any value = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_TestObjectHolder value_ = new shared.SequenceTestPackage.sequence_TestObjectHolder();
            value.insert_Streamable(value_);
            _nvl.add_value(null, value, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);
            //--- _obj.attribute_object_seq(shared.SequenceTestPackage.sequence_TestObjectHelper.extract(value));
            _obj.attribute_object_seq(value_.value); //+++

            return;
        }
        if (_opName.equals("check_attribute_object_seq"))
        {
            _req.params(_nvl);

            try {
                _obj.check_attribute_object_seq();


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("in_parameter_object_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_TestObjectHolder seq_ = new shared.SequenceTestPackage.sequence_TestObjectHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);

            try {
                _obj.in_parameter_object_seq(seq_.value);


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("inout_parameter_object_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_TestObjectHolder seq_ = new shared.SequenceTestPackage.sequence_TestObjectHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_INOUT.value);
            _req.params(_nvl);

            try {
                _obj.inout_parameter_object_seq(seq_);


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("out_parameter_object_seq"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any seq = _obj._orb().create_any();
            shared.SequenceTestPackage.sequence_TestObjectHolder seq_ = new shared.SequenceTestPackage.sequence_TestObjectHolder();
            seq.insert_Streamable(seq_);
            _nvl.add_value(null, seq, org.omg.CORBA.ARG_OUT.value);
            _req.params(_nvl);

            _obj.out_parameter_object_seq(seq_);


            return;
        }
        if (_opName.equals("result_object_seq"))
        {
            _ret = _obj._orb().create_any();
            _req.params(_nvl);

            shared.SequenceTestPackage.sequence_TestObjectHolder _retHolder = new shared.SequenceTestPackage.sequence_TestObjectHolder();
            _retHolder.value = _obj.result_object_seq();

            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);

            return;
        }
        if (_opName.equals("set_short_name"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any name = _obj._orb().create_any();
            shared.SequenceTestPackage.BoundedStringHolder name_ = new shared.SequenceTestPackage.BoundedStringHolder();
            name.insert_Streamable(name_);
            _nvl.add_value(null, name, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);

            try {
                _obj.set_short_name(name_.value);


            } catch (shared.SequenceTestPackage.failure _ex) {
                shared.SequenceTestPackage.failureHelper.insert(_ret,_ex);
                _req.except(_ret);
            }
            return;
        }
        if (_opName.equals("set_long_name"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any name = _obj._orb().create_any();
            shared.SequenceTestPackage.BoundedStringHolder name_ = new shared.SequenceTestPackage.BoundedStringHolder();
            name.insert_Streamable(name_);
            _nvl.add_value(null, name, org.omg.CORBA.ARG_IN.value);
            _req.params(_nvl);

            _obj.set_long_name(name_.value);


            return;
        }
        if (_opName.equals("get_short_name"))
        {
            _ret = _obj._orb().create_any();
            _req.params(_nvl);

            shared.SequenceTestPackage.BoundedStringHolder _retHolder = new shared.SequenceTestPackage.BoundedStringHolder();
            _retHolder.value = _obj.get_short_name();

            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);

            return;
        }
        if (_opName.equals("get_long_name"))
        {
            _ret = _obj._orb().create_any();
            _req.params(_nvl);

            shared.SequenceTestPackage.BoundedStringHolder _retHolder = new shared.SequenceTestPackage.BoundedStringHolder();
            _retHolder.value = _obj.get_long_name();

            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);

            return;
        }
        if (_opName.equals("get_name"))
        {
            _ret = _obj._orb().create_any();
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any name = _obj._orb().create_any();
            shared.SequenceTestPackage.BoundedStringHolder name_ = new shared.SequenceTestPackage.BoundedStringHolder();
            name.insert_Streamable(name_);
            _nvl.add_value(null, name, org.omg.CORBA.ARG_OUT.value);
            _req.params(_nvl);

            org.omg.CORBA.ShortHolderHolder _retHolder = new org.omg.CORBA.ShortHolderHolder();
            _retHolder.value.value = _obj.get_name(name_);

            _ret.insert_Streamable(_retHolder);
            _req.result(_ret);

            return;
        }
        if (_opName.equals("reverse_name"))
        {
            _nvl = _obj._orb().create_list(1);
            org.omg.CORBA.Any name = _obj._orb().create_any();
            shared.SequenceTestPackage.BoundedStringHolder name_ = new shared.SequenceTestPackage.BoundedStringHolder();
            name.insert_Streamable(name_);
            _nvl.add_value(null, name, org.omg.CORBA.ARG_INOUT.value);
            _req.params(_nvl);

            _obj.reverse_name(name_);


            return;
        }
        else
            throw new org.omg.CORBA.BAD_OPERATION(0, org.omg.CORBA.CompletionStatus.COMPLETED_MAYBE);
    }

    public abstract short[] attribute_short_seq();

    public abstract void attribute_short_seq(short[] value);

    public abstract void check_attribute_short_seq() 
        throws shared.SequenceTestPackage.failure;

    public abstract void in_parameter_short_seq(short[] seq) 
        throws shared.SequenceTestPackage.failure;

    public abstract void inout_parameter_short_seq(shared.SequenceTestPackage.sequence_shortHolder seq) 
        throws shared.SequenceTestPackage.failure;

    public abstract void out_parameter_short_seq(shared.SequenceTestPackage.sequence_shortHolder seq) ;

    public abstract short[] result_short_seq() ;

    public abstract shared.Structure[] attribute_struct_seq();

    public abstract void attribute_struct_seq(shared.Structure[] value);

    public abstract void check_attribute_struct_seq() 
        throws shared.SequenceTestPackage.failure;

    public abstract void in_parameter_struct_seq(shared.Structure[] seq) 
        throws shared.SequenceTestPackage.failure;

    public abstract void inout_parameter_struct_seq(shared.SequenceTestPackage.sequence_StructureHolder seq) 
        throws shared.SequenceTestPackage.failure;

    public abstract void out_parameter_struct_seq(shared.SequenceTestPackage.sequence_StructureHolder seq) ;

    public abstract shared.Structure[] result_struct_seq() ;

    public abstract shared.TestObject TestObject_factory(int id) ;

    public abstract shared.TestObject[] attribute_object_seq();

    public abstract void attribute_object_seq(shared.TestObject[] value);

    public abstract void check_attribute_object_seq() 
        throws shared.SequenceTestPackage.failure;

    public abstract void in_parameter_object_seq(shared.TestObject[] seq) 
        throws shared.SequenceTestPackage.failure;

    public abstract void inout_parameter_object_seq(shared.SequenceTestPackage.sequence_TestObjectHolder seq) 
        throws shared.SequenceTestPackage.failure;

    public abstract void out_parameter_object_seq(shared.SequenceTestPackage.sequence_TestObjectHolder seq) ;

    public abstract shared.TestObject[] result_object_seq() ;

    public abstract void set_short_name(char[] name) 
        throws shared.SequenceTestPackage.failure;

    public abstract void set_long_name(char[] name) ;

    public abstract char[] get_short_name() ;

    public abstract char[] get_long_name() ;

    public abstract short get_name(shared.SequenceTestPackage.BoundedStringHolder name) ;

    public abstract void reverse_name(shared.SequenceTestPackage.BoundedStringHolder name) ;

}
