directory-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From elecha...@apache.org
Subject svn commit: r1068124 [8/19] - in /directory/apacheds/branches/m1/kerberos-codec/src: main/java/org/apache/directory/server/kerberos/shared/crypto/checksum/ main/java/org/apache/directory/server/kerberos/shared/crypto/encryption/ main/java/org/apache/di...
Date Mon, 07 Feb 2011 20:49:13 GMT
Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encKrbPrivPart/actions/StoreUserData.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encKrbPrivPart/actions/StoreUserData.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encKrbPrivPart/actions/StoreUserData.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encKrbPrivPart/actions/StoreUserData.java Mon Feb  7 20:49:04 2011
@@ -6,31 +6,30 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encKrbPrivPart.actions;
 
 
 import org.apache.directory.shared.asn1.actions.AbstractReadOctetString;
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.codec.encKrbPrivPart.EncKrbPrivPartContainer;
 
 
 /**
  * The action used to read the EncKrbPrivPart user-data
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreUserData extends AbstractReadOctetString
+public class StoreUserData extends AbstractReadOctetString<EncKrbPrivPartContainer>
 {
     /**
      * Instantiates a new StoreUserData action.
@@ -45,9 +44,8 @@ public class StoreUserData extends Abstr
      * {@inheritDoc}
      */
     @Override
-    protected void setOctetString( byte[] data, Asn1Container container )
+    protected void setOctetString( byte[] data, EncKrbPrivPartContainer encKrbPrivPartContainer )
     {
-        EncKrbPrivPartContainer encKrbPrivPartContainer = ( EncKrbPrivPartContainer ) container;
         encKrbPrivPartContainer.getEncKrbPrivPart().setUserData( data );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/EncTgsRepPartGrammar.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/EncTgsRepPartGrammar.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/EncTgsRepPartGrammar.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/EncTgsRepPartGrammar.java Mon Feb  7 20:49:04 2011
@@ -6,16 +6,16 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTgsRepPart;
 
@@ -33,10 +33,10 @@ import org.slf4j.LoggerFactory;
  * This class implements the EncTgsRepPart structure. All the actions are declared
  * in this class. As it is a singleton, these declaration are only done once. If
  * an action is to be added or modified, this is where the work is to be done !
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public final class EncTgsRepPartGrammar extends AbstractGrammar
+public final class EncTgsRepPartGrammar extends AbstractGrammar<EncTgsRepPartContainer>
 {
     /** The logger */
     static final Logger LOG = LoggerFactory.getLogger( EncTgsRepPartGrammar.class );
@@ -45,12 +45,13 @@ public final class EncTgsRepPartGrammar 
     static final boolean IS_DEBUG = LOG.isDebugEnabled();
 
     /** The instance of grammar. EncTgsRepPartGrammar is a singleton */
-    private static Grammar instance = new EncTgsRepPartGrammar();
+    private static Grammar<EncTgsRepPartContainer> instance = new EncTgsRepPartGrammar();
 
 
     /**
      * Creates a new EncTgsRepPartGrammar object.
      */
+    @SuppressWarnings("unchecked")
     private EncTgsRepPartGrammar()
     {
         setName( EncTgsRepPartGrammar.class.getName() );
@@ -59,24 +60,27 @@ public final class EncTgsRepPartGrammar 
         super.transitions = new GrammarTransition[EncTgsRepPartStatesEnum.LAST_ENC_TGS_REP_PART_STATE.ordinal()][256];
 
         // ============================================================================================
-        // EncTgsRepPart 
+        // EncTgsRepPart
         // ============================================================================================
         // --------------------------------------------------------------------------------------------
         // Transition from EncTgsRepPart init to EncKDCRepPart
         // --------------------------------------------------------------------------------------------
         // EncASRepPart    ::= [APPLICATION 25] EncKDCRepPart
-        super.transitions[EncTgsRepPartStatesEnum.START_STATE.ordinal()][KerberosConstants.ENC_TGS_REP_PART_TAG] = new GrammarTransition(
-            EncTgsRepPartStatesEnum.START_STATE, EncTgsRepPartStatesEnum.ENC_TGS_REP_PART_STATE, KerberosConstants.ENC_TGS_REP_PART_TAG,
-            new StoreEncTgsRepPart() );
+        super.transitions[EncTgsRepPartStatesEnum.START_STATE.ordinal()][KerberosConstants.ENC_TGS_REP_PART_TAG] =
+            new GrammarTransition<EncTgsRepPartContainer>(
+                EncTgsRepPartStatesEnum.START_STATE,
+                EncTgsRepPartStatesEnum.ENC_TGS_REP_PART_STATE,
+                KerberosConstants.ENC_TGS_REP_PART_TAG,
+                new StoreEncTgsRepPart() );
     }
 
 
     /**
      * Get the instance of this grammar
-     * 
+     *
      * @return An instance on the EncAsRepPart Grammar
      */
-    public static Grammar getInstance()
+    public static Grammar<EncTgsRepPartContainer> getInstance()
     {
         return instance;
     }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/EncTgsRepPartStatesEnum.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/EncTgsRepPartStatesEnum.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/EncTgsRepPartStatesEnum.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/EncTgsRepPartStatesEnum.java Mon Feb  7 20:49:04 2011
@@ -6,16 +6,16 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTgsRepPart;
 
@@ -27,24 +27,24 @@ import org.apache.directory.shared.asn1.
 /**
  * This class store the EncTgsRepPart grammar's constants. It is also used for debugging
  * purpose
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
 public enum EncTgsRepPartStatesEnum implements States
 {
     // Start
     START_STATE,                            // 0
-    
+
     // ----- EncTgsRepPart message --------------------------------------
     ENC_TGS_REP_PART_STATE,                  // 1
-    
+
     // End
     LAST_ENC_TGS_REP_PART_STATE;             // 2
 
-    
+
     /**
      * Get the grammar name
-     * 
+     *
      * @param grammar The grammar code
      * @return The grammar name
      */
@@ -56,11 +56,11 @@ public enum EncTgsRepPartStatesEnum impl
 
     /**
      * Get the grammar name
-     * 
+     *
      * @param grammar The grammar class
      * @return The grammar name
      */
-    public String getGrammarName( Grammar grammar )
+    public String getGrammarName( Grammar<EncTgsRepPartContainer> grammar )
     {
         if ( grammar instanceof EncTgsRepPartGrammar )
         {
@@ -75,7 +75,7 @@ public enum EncTgsRepPartStatesEnum impl
 
     /**
      * Get the string representing the state
-     * 
+     *
      * @param state The state number
      * @return The String representing the state
      */
@@ -84,7 +84,7 @@ public enum EncTgsRepPartStatesEnum impl
         return ( ( state == LAST_ENC_TGS_REP_PART_STATE.ordinal() ) ? "ENC_TGS_REP_PART_END_STATE" : name() );
     }
 
-    
+
     /**
      * {@inheritDoc}
      */
@@ -92,8 +92,8 @@ public enum EncTgsRepPartStatesEnum impl
     {
         return this == LAST_ENC_TGS_REP_PART_STATE;
     }
-    
-    
+
+
     /**
      * {@inheritDoc}
      */

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/actions/StoreEncTgsRepPart.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/actions/StoreEncTgsRepPart.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/actions/StoreEncTgsRepPart.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTgsRepPart/actions/StoreEncTgsRepPart.java Mon Feb  7 20:49:04 2011
@@ -6,22 +6,21 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTgsRepPart.actions;
 
 
 import org.apache.directory.shared.asn1.DecoderException;
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.asn1.ber.Asn1Decoder;
 import org.apache.directory.shared.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.shared.asn1.ber.tlv.TLV;
@@ -35,10 +34,10 @@ import org.slf4j.LoggerFactory;
 
 /**
  * The action used to add a EncTgsRepPart object
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreEncTgsRepPart extends GrammarAction
+public class StoreEncTgsRepPart extends GrammarAction<EncTgsRepPartContainer>
 {
     /** The logger */
     private static final Logger LOG = LoggerFactory.getLogger( StoreEncTgsRepPart.class );
@@ -59,10 +58,8 @@ public class StoreEncTgsRepPart extends 
     /**
      * {@inheritDoc}
      */
-    public void action( Asn1Container container ) throws DecoderException
+    public void action( EncTgsRepPartContainer encTgsRepPartContainer ) throws DecoderException
     {
-        EncTgsRepPartContainer encTgsRepPartContainer = ( EncTgsRepPartContainer ) container;
-
         TLV tlv = encTgsRepPartContainer.getCurrentTLV();
 
         // The Length should not be null
@@ -73,28 +70,28 @@ public class StoreEncTgsRepPart extends 
             // This will generate a PROTOCOL_ERROR
             throw new DecoderException( I18n.err( I18n.ERR_04067 ) );
         }
-        
+
         // Now, let's decode the EncKdcRepPart
         Asn1Decoder encKdcRepPartDecoder = new Asn1Decoder();
-        
-        EncKdcRepPartContainer encKdcRepPartContainer = new EncKdcRepPartContainer( container.getStream() );
-        
+
+        EncKdcRepPartContainer encKdcRepPartContainer = new EncKdcRepPartContainer( encTgsRepPartContainer.getStream() );
+
         // Decode the EncKdcRepPart PDU
         try
         {
-            encKdcRepPartDecoder.decode( container.getStream(), encKdcRepPartContainer );
+            encKdcRepPartDecoder.decode( encTgsRepPartContainer.getStream(), encKdcRepPartContainer );
         }
         catch ( DecoderException de )
         {
             throw de;
         }
-        
+
         // Update the expected length for the current TLV
         tlv.setExpectedLength( tlv.getExpectedLength() - tlv.getLength() );
 
         // Update the parent
-        container.updateParent();
-        
+        encTgsRepPartContainer.updateParent();
+
         EncKdcRepPart encKdcRepPart = encKdcRepPartContainer.getEncKdcRepPart();
 
         encTgsRepPartContainer.getEncTgsRepPart().setEncKdcRepPart( encKdcRepPart );
@@ -103,7 +100,7 @@ public class StoreEncTgsRepPart extends 
         {
             LOG.debug( "EncKdcRepPart : {}", encKdcRepPart );
         }
-        
-        container.setGrammarEndAllowed( true );
+
+        encTgsRepPartContainer.setGrammarEndAllowed( true );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/EncTicketPartGrammar.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/EncTicketPartGrammar.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/EncTicketPartGrammar.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/EncTicketPartGrammar.java Mon Feb  7 20:49:04 2011
@@ -6,16 +6,16 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart;
 
@@ -46,10 +46,10 @@ import org.slf4j.LoggerFactory;
  * This class implements the EncTicketPart structure. All the actions are declared
  * in this class. As it is a singleton, these declaration are only done once. If
  * an action is to be added or modified, this is where the work is to be done !
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public final class EncTicketPartGrammar extends AbstractGrammar
+public final class EncTicketPartGrammar extends AbstractGrammar<EncTicketPartContainer>
 {
     /** The logger */
     static final Logger LOG = LoggerFactory.getLogger( EncTicketPartGrammar.class );
@@ -58,12 +58,13 @@ public final class EncTicketPartGrammar 
     static final boolean IS_DEBUG = LOG.isDebugEnabled();
 
     /** The instance of grammar. EncTicketPartGrammar is a singleton */
-    private static Grammar instance = new EncTicketPartGrammar();
+    private static Grammar<EncTicketPartContainer> instance = new EncTicketPartGrammar();
 
 
     /**
      * Creates a new EncTicketPartGrammar object.
      */
+    @SuppressWarnings("unchecked")
     private EncTicketPartGrammar()
     {
         setName( EncTicketPartGrammar.class.getName() );
@@ -74,106 +75,181 @@ public final class EncTicketPartGrammar 
         // ============================================================================================
         // EncTicketPart
         // ============================================================================================
-        super.transitions[EncTicketPartStatesEnum.START_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.START_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_TAG_STATE, KerberosConstants.ENC_TICKET_PART_TAG,
-            new EncTicketPartInit());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_TAG_STATE.ordinal()][UniversalTag.SEQUENCE.getValue()] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_SEQ_STATE, UniversalTag.SEQUENCE.getValue(),
-            new CheckNotNullLength());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_SEQ_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_FLAGS_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_SEQ_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_TAG_STATE, KerberosConstants.ENC_TICKET_PART_FLAGS_TAG,
-            new CheckNotNullLength());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_TAG_STATE.ordinal()][UniversalTag.BIT_STRING.getValue()] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_STATE, UniversalTag.BIT_STRING.getValue(),
-            new StoreFlags());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_KEY_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_KEY_TAG_STATE, KerberosConstants.ENC_TICKET_PART_KEY_TAG,
-            new StoreKey());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_KEY_TAG_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_CREALM_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_KEY_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_TAG_STATE, KerberosConstants.ENC_TICKET_PART_CREALM_TAG,
-            new CheckNotNullLength());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_TAG_STATE.ordinal()][UniversalTag.GENERAL_STRING.getValue()] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_STATE, UniversalTag.GENERAL_STRING.getValue(),
-            new StoreCRealm());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_CNAME_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_CNAME_TAG_STATE, KerberosConstants.ENC_TICKET_PART_CNAME_TAG,
-            new StoreCName());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_CNAME_TAG_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_TRANSITED_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_CNAME_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_TRANSITED_TAG_STATE, KerberosConstants.ENC_TICKET_PART_TRANSITED_TAG,
-            new StoreTransited());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_TRANSITED_TAG_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_AUTHTIME_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_TRANSITED_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_TAG_STATE, KerberosConstants.ENC_TICKET_PART_AUTHTIME_TAG,
-            new CheckNotNullLength());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_TAG_STATE.ordinal()][UniversalTag.GENERALIZED_TIME.getValue()] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE, UniversalTag.GENERALIZED_TIME.getValue(),
-            new StoreAuthTime());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_STARTTIME_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_TAG_STATE, KerberosConstants.ENC_TICKET_PART_STARTTIME_TAG,
-            new CheckNotNullLength());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_TAG_STATE.ordinal()][UniversalTag.GENERALIZED_TIME.getValue()] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_STATE, UniversalTag.GENERALIZED_TIME.getValue(),
-            new StoreStartTime());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_ENDTIME_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_TAG_STATE, KerberosConstants.ENC_TICKET_PART_ENDTIME_TAG,
-            new CheckNotNullLength());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_TAG_STATE.ordinal()][UniversalTag.GENERALIZED_TIME.getValue()] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE, UniversalTag.GENERALIZED_TIME.getValue(),
-            new StoreEndTime());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_RENEWTILL_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_TAG_STATE, KerberosConstants.ENC_TICKET_PART_RENEWTILL_TAG,
-            new CheckNotNullLength());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_TAG_STATE.ordinal()][UniversalTag.GENERALIZED_TIME.getValue()] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE, UniversalTag.GENERALIZED_TIME.getValue(),
-            new StoreRenewtill());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_CADDR_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_CADDR_TAG_STATE, KerberosConstants.ENC_TICKET_PART_CADDR_TAG,
-            new StoreCaddr());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_CADDR_TAG_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_CADDR_TAG_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHZ_DATA_TAG_STATE, KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG,
-            new StoreAuthorizationData());
-
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_ENDTIME_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_TAG_STATE, KerberosConstants.ENC_TICKET_PART_ENDTIME_TAG,
-            new CheckNotNullLength());
-
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_CADDR_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_CADDR_TAG_STATE, KerberosConstants.ENC_TICKET_PART_CADDR_TAG,
-            new StoreCaddr());
-        
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHZ_DATA_TAG_STATE, KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG,
-            new StoreAuthorizationData());
-
-        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG] = new GrammarTransition(
-            EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE, EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHZ_DATA_TAG_STATE, KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG,
-            new StoreAuthorizationData());
+        super.transitions[EncTicketPartStatesEnum.START_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.START_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_TAG,
+                new EncTicketPartInit() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_TAG_STATE.ordinal()][UniversalTag.SEQUENCE.getValue()] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_SEQ_STATE,
+                UniversalTag.SEQUENCE.getValue(),
+                new CheckNotNullLength<EncTicketPartContainer>() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_SEQ_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_FLAGS_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_SEQ_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_FLAGS_TAG,
+                new CheckNotNullLength<EncTicketPartContainer>() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_TAG_STATE.ordinal()][UniversalTag.BIT_STRING
+            .getValue()] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_STATE,
+                UniversalTag.BIT_STRING.getValue(),
+                new StoreFlags() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_KEY_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_FLAGS_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_KEY_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_KEY_TAG,
+                new StoreKey() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_KEY_TAG_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_CREALM_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_KEY_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_CREALM_TAG,
+                new CheckNotNullLength<EncTicketPartContainer>() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_TAG_STATE.ordinal()][UniversalTag.GENERAL_STRING
+            .getValue()] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_STATE,
+                UniversalTag.GENERAL_STRING.getValue(),
+                new StoreCRealm() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_CNAME_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CREALM_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CNAME_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_CNAME_TAG,
+                new StoreCName() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_CNAME_TAG_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_TRANSITED_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CNAME_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_TRANSITED_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_TRANSITED_TAG,
+                new StoreTransited() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_TRANSITED_TAG_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_AUTHTIME_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_TRANSITED_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_AUTHTIME_TAG,
+                new CheckNotNullLength<EncTicketPartContainer>() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_TAG_STATE.ordinal()][UniversalTag.GENERALIZED_TIME
+            .getValue()] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE,
+                UniversalTag.GENERALIZED_TIME.getValue(),
+                new StoreAuthTime() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_STARTTIME_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_STARTTIME_TAG,
+                new CheckNotNullLength<EncTicketPartContainer>() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_TAG_STATE.ordinal()][UniversalTag.GENERALIZED_TIME
+            .getValue()] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_STATE,
+                UniversalTag.GENERALIZED_TIME.getValue(),
+                new StoreStartTime() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_ENDTIME_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_STARTTIME_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_ENDTIME_TAG,
+                new CheckNotNullLength<EncTicketPartContainer>() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_TAG_STATE.ordinal()][UniversalTag.GENERALIZED_TIME
+            .getValue()] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE,
+                UniversalTag.GENERALIZED_TIME.getValue(),
+                new StoreEndTime() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_RENEWTILL_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_RENEWTILL_TAG,
+                new CheckNotNullLength<EncTicketPartContainer>() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_TAG_STATE.ordinal()][UniversalTag.GENERALIZED_TIME
+            .getValue()] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE,
+                UniversalTag.GENERALIZED_TIME.getValue(),
+                new StoreRenewtill() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_CADDR_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CADDR_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_CADDR_TAG,
+                new StoreCaddr() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_CADDR_TAG_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CADDR_TAG_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHZ_DATA_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG,
+                new StoreAuthorizationData() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_ENDTIME_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHTIME_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_ENDTIME_TAG,
+                new CheckNotNullLength<EncTicketPartContainer>() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_CADDR_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_CADDR_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_CADDR_TAG,
+                new StoreCaddr() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_ENDTIME_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHZ_DATA_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG,
+                new StoreAuthorizationData() );
+
+        super.transitions[EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE.ordinal()][KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG] =
+            new GrammarTransition<EncTicketPartContainer>(
+                EncTicketPartStatesEnum.ENC_TICKET_PART_RENEWTILL_STATE,
+                EncTicketPartStatesEnum.ENC_TICKET_PART_AUTHZ_DATA_TAG_STATE,
+                KerberosConstants.ENC_TICKET_PART_AUTHORIZATION_DATA_TAG,
+                new StoreAuthorizationData() );
     }
 
 
     /**
      * Get the instance of this grammar
-     * 
+     *
      * @return An instance on the EncTicketPart Grammar
      */
-    public static Grammar getInstance()
+    public static Grammar<EncTicketPartContainer> getInstance()
     {
         return instance;
     }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/EncTicketPartStatesEnum.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/EncTicketPartStatesEnum.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/EncTicketPartStatesEnum.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/EncTicketPartStatesEnum.java Mon Feb  7 20:49:04 2011
@@ -6,16 +6,16 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart;
 
@@ -27,53 +27,53 @@ import org.apache.directory.shared.asn1.
 /**
  * This class store the EncTicketPart grammar's constants. It is also used for debugging
  * purpose
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
 public enum EncTicketPartStatesEnum implements States
 {
     // Start
     START_STATE,                        // 0
-    
+
     ENC_TICKET_PART_TAG_STATE,          // 1
-    
+
     ENC_TICKET_PART_SEQ_STATE,          // 2
-    
+
     ENC_TICKET_PART_FLAGS_TAG_STATE,    // 3
     ENC_TICKET_PART_FLAGS_STATE,        // 4
-    
+
     ENC_TICKET_PART_KEY_TAG_STATE,      // 5
-    
+
     ENC_TICKET_PART_CREALM_TAG_STATE,   // 6
     ENC_TICKET_PART_CREALM_STATE,       // 7
-    
+
     ENC_TICKET_PART_CNAME_TAG_STATE,    // 8
-    
+
     ENC_TICKET_PART_TRANSITED_TAG_STATE,// 9
-    
+
     ENC_TICKET_PART_AUTHTIME_TAG_STATE, // 10
     ENC_TICKET_PART_AUTHTIME_STATE,     // 11
-    
+
     ENC_TICKET_PART_STARTTIME_TAG_STATE,// 12
     ENC_TICKET_PART_STARTTIME_STATE,    // 13
-    
+
     ENC_TICKET_PART_ENDTIME_TAG_STATE,  // 14
     ENC_TICKET_PART_ENDTIME_STATE,      // 15
-    
+
     ENC_TICKET_PART_RENEWTILL_TAG_STATE,// 16
     ENC_TICKET_PART_RENEWTILL_STATE,    // 17
-    
+
     ENC_TICKET_PART_CADDR_TAG_STATE,    // 18
-    
+
     ENC_TICKET_PART_AUTHZ_DATA_TAG_STATE,// 19
-    
+
     // End
     LAST_ENC_TICKET_PART_STATE;         // 20
 
-    
+
     /**
      * Get the grammar name
-     * 
+     *
      * @param grammar The grammar code
      * @return The grammar name
      */
@@ -85,11 +85,11 @@ public enum EncTicketPartStatesEnum impl
 
     /**
      * Get the grammar name
-     * 
+     *
      * @param grammar The grammar class
      * @return The grammar name
      */
-    public String getGrammarName( Grammar grammar )
+    public String getGrammarName( Grammar<EncTicketPartContainer> grammar )
     {
         if ( grammar instanceof EncTicketPartGrammar )
         {
@@ -104,7 +104,7 @@ public enum EncTicketPartStatesEnum impl
 
     /**
      * Get the string representing the state
-     * 
+     *
      * @param state The state number
      * @return The String representing the state
      */
@@ -113,7 +113,7 @@ public enum EncTicketPartStatesEnum impl
         return ( ( state == LAST_ENC_TICKET_PART_STATE.ordinal() ) ? "LAST_ENC_TICKET_PART_STATE" : name() );
     }
 
-    
+
     /**
      * {@inheritDoc}
      */
@@ -121,8 +121,8 @@ public enum EncTicketPartStatesEnum impl
     {
         return this == LAST_ENC_TICKET_PART_STATE;
     }
-    
-    
+
+
     /**
      * {@inheritDoc}
      */

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/EncTicketPartInit.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/EncTicketPartInit.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/EncTicketPartInit.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/EncTicketPartInit.java Mon Feb  7 20:49:04 2011
@@ -6,24 +6,23 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
+import org.apache.directory.shared.asn1.DecoderException;
 import org.apache.directory.shared.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.shared.asn1.ber.tlv.TLV;
-import org.apache.directory.shared.asn1.DecoderException;
 import org.apache.directory.shared.i18n.I18n;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
 import org.apache.directory.shared.kerberos.components.EncTicketPart;
@@ -33,10 +32,10 @@ import org.slf4j.LoggerFactory;
 
 /**
  * The action used to initialize the EncTicketPart object
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class EncTicketPartInit extends GrammarAction
+public class EncTicketPartInit extends GrammarAction<EncTicketPartContainer>
 {
     /** The logger */
     private static final Logger LOG = LoggerFactory.getLogger( EncTicketPartInit.class );
@@ -57,10 +56,8 @@ public class EncTicketPartInit extends G
     /**
      * {@inheritDoc}
      */
-    public void action( Asn1Container container ) throws DecoderException
+    public void action( EncTicketPartContainer encTicketPartContainer ) throws DecoderException
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
-
         TLV tlv = encTicketPartContainer.getCurrentTLV();
 
         // The Length should not be null
@@ -71,10 +68,10 @@ public class EncTicketPartInit extends G
             // This will generate a PROTOCOL_ERROR
             throw new DecoderException( I18n.err( I18n.ERR_04067 ) );
         }
-        
+
         EncTicketPart encTicketPart = new EncTicketPart();
         encTicketPartContainer.setEncTicketPart( encTicketPart );
-        
+
         if ( IS_DEBUG )
         {
             LOG.debug( "EncTicketPart created" );

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreAuthTime.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreAuthTime.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreAuthTime.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreAuthTime.java Mon Feb  7 20:49:04 2011
@@ -6,21 +6,20 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.KerberosTime;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadKerberosTime;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
@@ -28,10 +27,10 @@ import org.apache.directory.shared.kerbe
 
 /**
  * The action used to store the authtime KerberosTime
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreAuthTime extends AbstractReadKerberosTime
+public class StoreAuthTime extends AbstractReadKerberosTime<EncTicketPartContainer>
 {
 
     /**
@@ -47,9 +46,8 @@ public class StoreAuthTime extends Abstr
      * {@inheritDoc}
      */
     @Override
-    protected void setKerberosTime( KerberosTime krbtime, Asn1Container container )
+    protected void setKerberosTime( KerberosTime krbtime, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setAuthTime( krbtime );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreAuthorizationData.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreAuthorizationData.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreAuthorizationData.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreAuthorizationData.java Mon Feb  7 20:49:04 2011
@@ -6,21 +6,20 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadAuthorizationData;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
 import org.apache.directory.shared.kerberos.components.AuthorizationData;
@@ -28,10 +27,10 @@ import org.apache.directory.shared.kerbe
 
 /**
  * The action used to set the EncTicketPart authorization-data
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreAuthorizationData extends AbstractReadAuthorizationData
+public class StoreAuthorizationData extends AbstractReadAuthorizationData<EncTicketPartContainer>
 {
 
     /**
@@ -47,9 +46,8 @@ public class StoreAuthorizationData exte
      * {@inheritDoc}
      */
     @Override
-    protected void setAuthorizationData( AuthorizationData authorizationData, Asn1Container container )
+    protected void setAuthorizationData( AuthorizationData authorizationData, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setAuthorizationData( authorizationData );
         encTicketPartContainer.setGrammarEndAllowed( true );
     }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCName.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCName.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCName.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCName.java Mon Feb  7 20:49:04 2011
@@ -6,21 +6,20 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadPrincipalName;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
 import org.apache.directory.shared.kerberos.components.PrincipalName;
@@ -28,10 +27,10 @@ import org.apache.directory.shared.kerbe
 
 /**
  * The action used to set the EncTicketPart cName
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreCName extends AbstractReadPrincipalName
+public class StoreCName extends AbstractReadPrincipalName<EncTicketPartContainer>
 {
     /**
      * Instantiates a new StoreCName action.
@@ -46,9 +45,8 @@ public class StoreCName extends Abstract
      * {@inheritDoc}
      */
     @Override
-    protected void setPrincipalName( PrincipalName principalName, Asn1Container container )
+    protected void setPrincipalName( PrincipalName principalName, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setCName( principalName );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCRealm.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCRealm.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCRealm.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCRealm.java Mon Feb  7 20:49:04 2011
@@ -6,31 +6,30 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadRealm;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
 
 
 /**
  * The action used to set the cRealm
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreCRealm extends AbstractReadRealm
+public class StoreCRealm extends AbstractReadRealm<EncTicketPartContainer>
 {
     /**
      * Instantiates a new StoreCRealm action.
@@ -45,9 +44,8 @@ public class StoreCRealm extends Abstrac
      * {@inheritDoc}
      */
     @Override
-    protected void setRealm( String realm, Asn1Container container )
+    protected void setRealm( String realm, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setCRealm( realm );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCaddr.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCaddr.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCaddr.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreCaddr.java Mon Feb  7 20:49:04 2011
@@ -6,21 +6,20 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadHostAddresses;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
 import org.apache.directory.shared.kerberos.components.HostAddresses;
@@ -28,10 +27,10 @@ import org.apache.directory.shared.kerbe
 
 /**
  * The action used to store the ClientAddresses (caddr)
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreCaddr extends AbstractReadHostAddresses
+public class StoreCaddr extends AbstractReadHostAddresses<EncTicketPartContainer>
 {
     /**
      * Instantiates a new StoreClientAddresses action.
@@ -46,11 +45,10 @@ public class StoreCaddr extends Abstract
      * {@inheritDoc}
      */
     @Override
-    protected void setHostAddresses( HostAddresses hostAddresses, Asn1Container container )
+    protected void setHostAddresses( HostAddresses hostAddresses, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setClientAddresses( hostAddresses );
-        
-        container.setGrammarEndAllowed( true );
+
+        encTicketPartContainer.setGrammarEndAllowed( true );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreEndTime.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreEndTime.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreEndTime.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreEndTime.java Mon Feb  7 20:49:04 2011
@@ -6,21 +6,20 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.KerberosTime;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadKerberosTime;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
@@ -28,10 +27,10 @@ import org.apache.directory.shared.kerbe
 
 /**
  * The action used to store the endtime KerberosTime
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreEndTime extends AbstractReadKerberosTime
+public class StoreEndTime extends AbstractReadKerberosTime<EncTicketPartContainer>
 {
 
     /**
@@ -47,11 +46,10 @@ public class StoreEndTime extends Abstra
      * {@inheritDoc}
      */
     @Override
-    protected void setKerberosTime( KerberosTime krbtime, Asn1Container container )
+    protected void setKerberosTime( KerberosTime krbtime, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setEndTime( krbtime );
-        
-        container.setGrammarEndAllowed( true );
+
+        encTicketPartContainer.setGrammarEndAllowed( true );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreFlags.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreFlags.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreFlags.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreFlags.java Mon Feb  7 20:49:04 2011
@@ -6,32 +6,31 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
 import org.apache.directory.shared.asn1.actions.AbstractReadBitString;
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
 import org.apache.directory.shared.kerberos.flags.TicketFlags;
 
 
 /**
  * The action used to store the TicketFlags
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreFlags extends AbstractReadBitString
+public class StoreFlags extends AbstractReadBitString<EncTicketPartContainer>
 {
 
     /**
@@ -47,10 +46,9 @@ public class StoreFlags extends Abstract
      * {@inheritDoc}
      */
     @Override
-    protected void setBitString( byte[] data, Asn1Container container )
+    protected void setBitString( byte[] data, EncTicketPartContainer encTicketPartContainer )
     {
         TicketFlags flags = new TicketFlags( data );
-        EncTicketPartContainer encTickerPartContainer = ( EncTicketPartContainer ) container;
-        encTickerPartContainer.getEncTicketPart().setFlags( flags );
+        encTicketPartContainer.getEncTicketPart().setFlags( flags );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreKey.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreKey.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreKey.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreKey.java Mon Feb  7 20:49:04 2011
@@ -6,21 +6,20 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadEncryptionKey;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
 import org.apache.directory.shared.kerberos.components.EncryptionKey;
@@ -28,10 +27,10 @@ import org.apache.directory.shared.kerbe
 
 /**
  * The action used to set the EncTicketPart key
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreKey extends AbstractReadEncryptionKey
+public class StoreKey extends AbstractReadEncryptionKey<EncTicketPartContainer>
 {
     /**
      * Instantiates a new StoreKey action.
@@ -46,9 +45,8 @@ public class StoreKey extends AbstractRe
      * {@inheritDoc}
      */
     @Override
-    protected void setEncryptionKey( EncryptionKey encryptionKey, Asn1Container container )
+    protected void setEncryptionKey( EncryptionKey encryptionKey, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setKey( encryptionKey );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreRenewtill.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreRenewtill.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreRenewtill.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreRenewtill.java Mon Feb  7 20:49:04 2011
@@ -6,21 +6,20 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.KerberosTime;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadKerberosTime;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
@@ -28,10 +27,10 @@ import org.apache.directory.shared.kerbe
 
 /**
  * The action used to store the renew-till KerberosTime
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreRenewtill extends AbstractReadKerberosTime
+public class StoreRenewtill extends AbstractReadKerberosTime<EncTicketPartContainer>
 {
 
     /**
@@ -47,11 +46,10 @@ public class StoreRenewtill extends Abst
      * {@inheritDoc}
      */
     @Override
-    protected void setKerberosTime( KerberosTime krbtime, Asn1Container container )
+    protected void setKerberosTime( KerberosTime krbtime, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setRenewTill( krbtime );
-        
-        container.setGrammarEndAllowed( true );
+
+        encTicketPartContainer.setGrammarEndAllowed( true );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreStartTime.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreStartTime.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreStartTime.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreStartTime.java Mon Feb  7 20:49:04 2011
@@ -6,21 +6,20 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.kerberos.KerberosTime;
 import org.apache.directory.shared.kerberos.codec.actions.AbstractReadKerberosTime;
 import org.apache.directory.shared.kerberos.codec.encTicketPart.EncTicketPartContainer;
@@ -28,10 +27,10 @@ import org.apache.directory.shared.kerbe
 
 /**
  * The action used to store the starttime KerberosTime
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreStartTime extends AbstractReadKerberosTime
+public class StoreStartTime extends AbstractReadKerberosTime<EncTicketPartContainer>
 {
 
     /**
@@ -47,9 +46,8 @@ public class StoreStartTime extends Abst
      * {@inheritDoc}
      */
     @Override
-    protected void setKerberosTime( KerberosTime krbtime, Asn1Container container )
+    protected void setKerberosTime( KerberosTime krbtime, EncTicketPartContainer encTicketPartContainer )
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
         encTicketPartContainer.getEncTicketPart().setStartTime( krbtime );
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreTransited.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreTransited.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreTransited.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encTicketPart/actions/StoreTransited.java Mon Feb  7 20:49:04 2011
@@ -21,7 +21,6 @@
 package org.apache.directory.shared.kerberos.codec.encTicketPart.actions;
 
 import org.apache.directory.shared.asn1.DecoderException;
-import org.apache.directory.shared.asn1.ber.Asn1Container;
 import org.apache.directory.shared.asn1.ber.Asn1Decoder;
 import org.apache.directory.shared.asn1.ber.grammar.GrammarAction;
 import org.apache.directory.shared.asn1.ber.tlv.TLV;
@@ -37,7 +36,7 @@ import org.slf4j.LoggerFactory;
  *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public class StoreTransited extends GrammarAction
+public class StoreTransited extends GrammarAction<EncTicketPartContainer>
 {
     /** The logger */
     private static final Logger LOG = LoggerFactory.getLogger( StoreTransited.class );
@@ -45,7 +44,7 @@ public class StoreTransited extends Gram
     /** Speedup for logs */
     private static final boolean IS_DEBUG = LOG.isDebugEnabled();
 
-    
+
     /**
      * Creates a new instance of StoreTransited.
      */
@@ -53,16 +52,14 @@ public class StoreTransited extends Gram
     {
         super( "EncTicketPart transited");
     }
-    
-    
+
+
     /**
      * {@inheritDoc}
      */
-    public void action( Asn1Container container ) throws DecoderException
+    public void action( EncTicketPartContainer encTicketPartContainer ) throws DecoderException
     {
-        EncTicketPartContainer encTicketPartContainer = ( EncTicketPartContainer ) container;
-        
-        TLV tlv = container.getCurrentTLV();
+        TLV tlv = encTicketPartContainer.getCurrentTLV();
 
         // The Length should not be null
         if ( tlv.getLength() == 0 )
@@ -77,10 +74,10 @@ public class StoreTransited extends Gram
 
         // Now, let's decode the TransitedEncoding
         Asn1Decoder transitedEncodingDecoder = new Asn1Decoder();
-        
+
         try
         {
-            transitedEncodingDecoder.decode( container.getStream(), transitedContainer );
+            transitedEncodingDecoder.decode( encTicketPartContainer.getStream(), transitedContainer );
         }
         catch ( DecoderException de )
         {
@@ -88,18 +85,18 @@ public class StoreTransited extends Gram
         }
 
         TransitedEncoding te = transitedContainer.getTransitedEncoding();
-        
+
         if ( IS_DEBUG )
         {
             LOG.debug( "TransitedEncoding {}", te );
         }
-        
+
         encTicketPartContainer.getEncTicketPart().setTransited( te );
-        
+
         // Update the expected length for the current TLV
         tlv.setExpectedLength( tlv.getExpectedLength() - tlv.getLength() );
 
         // Update the parent
-        container.updateParent();
+        encTicketPartContainer.updateParent();
     }
 }

Modified: directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encryptedData/EncryptedDataGrammar.java
URL: http://svn.apache.org/viewvc/directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encryptedData/EncryptedDataGrammar.java?rev=1068124&r1=1068123&r2=1068124&view=diff
==============================================================================
--- directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encryptedData/EncryptedDataGrammar.java (original)
+++ directory/apacheds/branches/m1/kerberos-codec/src/main/java/org/apache/directory/shared/kerberos/codec/encryptedData/EncryptedDataGrammar.java Mon Feb  7 20:49:04 2011
@@ -6,25 +6,25 @@
  *  to you under the Apache License, Version 2.0 (the
  *  "License"); you may not use this file except in compliance
  *  with the License.  You may obtain a copy of the License at
- *  
+ *
  *    http://www.apache.org/licenses/LICENSE-2.0
- *  
+ *
  *  Unless required by applicable law or agreed to in writing,
  *  software distributed under the License is distributed on an
  *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  *  KIND, either express or implied.  See the License for the
  *  specific language governing permissions and limitations
- *  under the License. 
- *  
+ *  under the License.
+ *
  */
 package org.apache.directory.shared.kerberos.codec.encryptedData;
 
 
+import org.apache.directory.shared.asn1.actions.CheckNotNullLength;
 import org.apache.directory.shared.asn1.ber.grammar.AbstractGrammar;
 import org.apache.directory.shared.asn1.ber.grammar.Grammar;
 import org.apache.directory.shared.asn1.ber.grammar.GrammarTransition;
 import org.apache.directory.shared.asn1.ber.tlv.UniversalTag;
-import org.apache.directory.shared.asn1.actions.CheckNotNullLength;
 import org.apache.directory.shared.kerberos.KerberosConstants;
 import org.apache.directory.shared.kerberos.codec.encryptedData.actions.EncryptedDataInit;
 import org.apache.directory.shared.kerberos.codec.encryptedData.actions.StoreCipher;
@@ -38,10 +38,10 @@ import org.slf4j.LoggerFactory;
  * This class implements the EncryptedData structure. All the actions are declared
  * in this class. As it is a singleton, these declaration are only done once. If
  * an action is to be added or modified, this is where the work is to be done !
- * 
+ *
  * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
  */
-public final class EncryptedDataGrammar extends AbstractGrammar
+public final class EncryptedDataGrammar extends AbstractGrammar<EncryptedDataContainer>
 {
     /** The logger */
     static final Logger LOG = LoggerFactory.getLogger( EncryptedDataGrammar.class );
@@ -50,11 +50,13 @@ public final class EncryptedDataGrammar 
     static final boolean IS_DEBUG = LOG.isDebugEnabled();
 
     /** The instance of grammar. EncryptedDataGrammar is a singleton */
-    private static Grammar instance = new EncryptedDataGrammar();
+    private static Grammar<EncryptedDataContainer> instance = new EncryptedDataGrammar();
+
 
     /**
      * Creates a new EncryptedDataGrammar object.
      */
+    @SuppressWarnings("unchecked")
     private EncryptedDataGrammar()
     {
         setName( EncryptedDataGrammar.class.getName() );
@@ -63,92 +65,111 @@ public final class EncryptedDataGrammar 
         super.transitions = new GrammarTransition[EncryptedDataStatesEnum.LAST_ENCRYPTED_DATA_STATE.ordinal()][256];
 
         // ============================================================================================
-        // EncryptedData 
+        // EncryptedData
         // ============================================================================================
         // --------------------------------------------------------------------------------------------
         // Transition from EncryptedData init to EncryptedData SEQ
         // --------------------------------------------------------------------------------------------
         // EncryptedData   ::= SEQUENCE
-        super.transitions[EncryptedDataStatesEnum.START_STATE.ordinal()][UniversalTag.SEQUENCE.getValue()] = new GrammarTransition(
-            EncryptedDataStatesEnum.START_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_SEQ_STATE, UniversalTag.SEQUENCE.getValue(),
-            new EncryptedDataInit() );
-        
+        super.transitions[EncryptedDataStatesEnum.START_STATE.ordinal()][UniversalTag.SEQUENCE.getValue()] =
+            new GrammarTransition<EncryptedDataContainer>(
+                EncryptedDataStatesEnum.START_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_SEQ_STATE,
+                UniversalTag.SEQUENCE.getValue(),
+                new EncryptedDataInit() );
+
         // --------------------------------------------------------------------------------------------
         // Transition from EncryptedData SEQ to etype tag
         // --------------------------------------------------------------------------------------------
         // EncryptedData   ::= SEQUENCE {
         //         etype       [0]
-        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_SEQ_STATE.ordinal()][KerberosConstants.ENCRYPTED_DATA_ETYPE_TAG] = new GrammarTransition(
-            EncryptedDataStatesEnum.ENCRYPTED_DATA_SEQ_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_TAG_STATE, KerberosConstants.ENCRYPTED_DATA_ETYPE_TAG,
-            new CheckNotNullLength() );
-        
+        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_SEQ_STATE.ordinal()][KerberosConstants.ENCRYPTED_DATA_ETYPE_TAG] =
+            new GrammarTransition<EncryptedDataContainer>(
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_SEQ_STATE,
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_TAG_STATE, KerberosConstants.ENCRYPTED_DATA_ETYPE_TAG,
+                new CheckNotNullLength<EncryptedDataContainer>() );
+
         // --------------------------------------------------------------------------------------------
         // Transition from etype tag to etype value
         // --------------------------------------------------------------------------------------------
         // EncryptedData   ::= SEQUENCE {
         //         etype       [0] Int32,
-        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_TAG_STATE.ordinal()][UniversalTag.INTEGER.getValue()] = new GrammarTransition(
-            EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_TAG_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE, UniversalTag.INTEGER.getValue(),
-            new StoreEType() );
-        
+        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_TAG_STATE.ordinal()][UniversalTag.INTEGER
+            .getValue()] =
+            new GrammarTransition<EncryptedDataContainer>(
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_TAG_STATE,
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE, UniversalTag.INTEGER.getValue(),
+                new StoreEType() );
+
         // --------------------------------------------------------------------------------------------
         // Transition from etype value to kvno tag
         // --------------------------------------------------------------------------------------------
         // EncryptedData   ::= SEQUENCE {
         //         ...
         //         kvno     [1]
-        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE.ordinal()][KerberosConstants.ENCRYPTED_DATA_KVNO_TAG] = new GrammarTransition(
-            EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_TAG_STATE, KerberosConstants.ENCRYPTED_DATA_KVNO_TAG,
-            new CheckNotNullLength() );
-        
+        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE.ordinal()][KerberosConstants.ENCRYPTED_DATA_KVNO_TAG] =
+            new GrammarTransition<EncryptedDataContainer>(
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE,
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_TAG_STATE, KerberosConstants.ENCRYPTED_DATA_KVNO_TAG,
+                new CheckNotNullLength<EncryptedDataContainer>() );
+
         // --------------------------------------------------------------------------------------------
         // Transition from etype value to cipher tag (kvno is missing)
         // --------------------------------------------------------------------------------------------
         // EncryptedData   ::= SEQUENCE {
         //         ...
         //         cipher     [2]
-        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE.ordinal()][KerberosConstants.ENCRYPTED_DATA_CIPHER_TAG] = new GrammarTransition(
-            EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_TAG_STATE, KerberosConstants.ENCRYPTED_DATA_CIPHER_TAG,
-            new CheckNotNullLength() );
-        
+        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE.ordinal()][KerberosConstants.ENCRYPTED_DATA_CIPHER_TAG] =
+            new GrammarTransition<EncryptedDataContainer>(
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_ETYPE_STATE,
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_TAG_STATE, KerberosConstants.ENCRYPTED_DATA_CIPHER_TAG,
+                new CheckNotNullLength<EncryptedDataContainer>() );
+
         // --------------------------------------------------------------------------------------------
         // Transition from kvno tag to kvno value
         // --------------------------------------------------------------------------------------------
         // EncryptedData   ::= SEQUENCE {
         //         ...
         //         kvno     [1] UInt32
-        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_TAG_STATE.ordinal()][UniversalTag.INTEGER.getValue()] = new GrammarTransition(
-            EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_TAG_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_STATE, UniversalTag.INTEGER.getValue(),
-            new StoreKvno() );
-        
+        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_TAG_STATE.ordinal()][UniversalTag.INTEGER
+            .getValue()] =
+            new GrammarTransition<EncryptedDataContainer>(
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_TAG_STATE,
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_STATE, UniversalTag.INTEGER.getValue(),
+                new StoreKvno() );
+
         // --------------------------------------------------------------------------------------------
         // Transition from kvno value value to cipher tag
         // --------------------------------------------------------------------------------------------
         // EncryptedData   ::= SEQUENCE {
         //         ...
         //         cipher     [2]
-        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_STATE.ordinal()][KerberosConstants.ENCRYPTED_DATA_CIPHER_TAG] = new GrammarTransition(
-            EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_TAG_STATE, KerberosConstants.ENCRYPTED_DATA_CIPHER_TAG,
-            new CheckNotNullLength() );
-        
+        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_STATE.ordinal()][KerberosConstants.ENCRYPTED_DATA_CIPHER_TAG] =
+            new GrammarTransition<EncryptedDataContainer>(
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_KVNO_STATE,
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_TAG_STATE, KerberosConstants.ENCRYPTED_DATA_CIPHER_TAG,
+                new CheckNotNullLength<EncryptedDataContainer>() );
+
         // --------------------------------------------------------------------------------------------
         // Transition from cipher tag to cipher value
         // --------------------------------------------------------------------------------------------
         // EncryptedData   ::= SEQUENCE {
         //         ...
         //         cipher     [2] OCTET STRING
-        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_TAG_STATE.ordinal()][UniversalTag.OCTET_STRING.getValue()] = new GrammarTransition(
-            EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_TAG_STATE, EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_STATE, UniversalTag.OCTET_STRING.getValue(),
-            new StoreCipher() );
+        super.transitions[EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_TAG_STATE.ordinal()][UniversalTag.OCTET_STRING
+            .getValue()] =
+            new GrammarTransition<EncryptedDataContainer>(
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_TAG_STATE,
+                EncryptedDataStatesEnum.ENCRYPTED_DATA_CIPHER_STATE, UniversalTag.OCTET_STRING.getValue(),
+                new StoreCipher() );
     }
 
 
     /**
      * Get the instance of this grammar
-     * 
+     *
      * @return An instance on the EncryptedData Grammar
      */
-    public static Grammar getInstance()
+    public static Grammar<EncryptedDataContainer> getInstance()
     {
         return instance;
     }



Mime
View raw message