Package org.apache.directory.shared.ldap.extras.extended.ads_impl.StoredProcedure

Examples of org.apache.directory.shared.ldap.extras.extended.ads_impl.StoredProcedure.StoredProcedureParameter


                        LOG.error( msg );
                        throw new DecoderException( msg );
                    }
                    else
                    {
                        StoredProcedureParameter parameter = new StoredProcedureParameter();

                        byte[] parameterType = tlv.getValue().getData();

                        parameter.setType( parameterType );

                        // We store the type in the current parameter.
                        storedProcedure.setCurrentParameter( parameter );

                        if ( LOG.isDebugEnabled() )
                        {
                            LOG.debug( "Parameter type found : " + Strings.dumpBytes(parameterType) );
                        }

                    }
                }
            } );

        // Parameter ::= {
        //    ...
        //    value OCTETSTRING (Tag)
        // }
        // Store the parameter value
        super.transitions[StoredProcedureStatesEnum.PARAMETER_TYPE_STATE.ordinal()][UniversalTag.OCTET_STRING.getValue()] =
            new GrammarTransition( StoredProcedureStatesEnum.PARAMETER_TYPE_STATE,
                                    StoredProcedureStatesEnum.PARAMETER_VALUE_STATE,
                                    UniversalTag.OCTET_STRING.getValue(),
                new GrammarAction( "Store parameter value" )
            {
                public void action( Asn1Container container ) throws DecoderException
                {
                    StoredProcedureContainer storedProcedureContainer = ( StoredProcedureContainer ) container;

                    TLV tlv = storedProcedureContainer.getCurrentTLV();
                    StoredProcedure storedProcedure = storedProcedureContainer.getStoredProcedure();

                    // Store the value.
                    if ( tlv.getLength() == 0 )
                    {
                        // We can't have a void parameter value !
                        String msg = I18n.err( I18n.ERR_04041 );
                        LOG.error( msg );
                        throw new DecoderException( msg );
                    }
                    else
                    {
                        byte[] parameterValue = tlv.getValue().getData();

                        if ( parameterValue.length != 0 )
                        {
                            StoredProcedureParameter parameter = storedProcedure.getCurrentParameter();
                            parameter.setValue( parameterValue );

                            // We can now add a new Parameter to the procedure
                            storedProcedure.addParameter( parameter );

                            if ( LOG.isDebugEnabled() )
View Full Code Here


        
         * Replacing this code with the one below without the conditional check.
        
         */

        StoredProcedureParameter parameter = new StoredProcedureParameter();
        parameter.setType( ( byte[] ) type );
        parameter.setValue( ( byte[] ) value );
        this.procedure.addParameter( parameter );

        // below here try to convert parameters to their appropriate byte[] representations

        /**
 
View Full Code Here

       
        assertEquals( "execute", Strings.utf8ToString(storedProcedure.getProcedure()) );

        assertEquals( 3, storedProcedure.getParameters().size() );

        StoredProcedureParameter param = storedProcedure.getParameters().get( 0 );

        assertEquals( "int", Strings.utf8ToString(param.getType()) );
        assertEquals( 1, param.getValue()[0] );

        param = storedProcedure.getParameters().get( 1 );

        assertEquals( "boolean", Strings.utf8ToString(param.getType()) );
        assertEquals( "true", Strings.utf8ToString(param.getValue()) );

        param = storedProcedure.getParameters().get( 2 );

        assertEquals( "String", Strings.utf8ToString(param.getType()) );
        assertEquals( "parameter3", Strings.utf8ToString(param.getValue()) );

        // Check the encoding
        try
        {
            ByteBuffer bb = storedProcedure.encode();
View Full Code Here

       
        assertEquals( "execute", Strings.utf8ToString(storedProcedure.getProcedure()) );

        assertEquals( 1, storedProcedure.getParameters().size() );

        StoredProcedureParameter param = storedProcedure.getParameters().get( 0 );

        assertEquals( "int", Strings.utf8ToString(param.getType()) );
        assertEquals( 1, param.getValue()[0] );

        // Check the encoding
        try
        {
            ByteBuffer bb = storedProcedure.encode();
View Full Code Here

TOP

Related Classes of org.apache.directory.shared.ldap.extras.extended.ads_impl.StoredProcedure.StoredProcedureParameter

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.