http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapabilities.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapabilities.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapabilities.java
deleted file mode 100644
index 3759fce..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapabilities.java
+++ /dev/null
@@ -1,146 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transaction;
-
-
-
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.TxnCapability;
-
-public class TxnCapabilities
-  implements TxnCapability, RestrictedType<Symbol>
-  
-  {
-
-
-
-    private final Symbol _val;
-
-    
-    public static final TxnCapabilities LOCAL_TXN = new 
TxnCapabilities(Symbol.valueOf("amqp:local-transactions"));
-    
-    public static final TxnCapabilities DISTRIBUTED_TXN = new 
TxnCapabilities(Symbol.valueOf("amqp:distributed-transactions"));
-    
-    public static final TxnCapabilities PROMOTABLE_TXN = new 
TxnCapabilities(Symbol.valueOf("amqp:promotable-transactions"));
-    
-    public static final TxnCapabilities MULTI_TXNS_PER_SSN = new 
TxnCapabilities(Symbol.valueOf("amqp:multi-txns-per-ssn"));
-    
-    public static final TxnCapabilities MULTI_SSNS_PER_TXN = new 
TxnCapabilities(Symbol.valueOf("amqp:multi-ssns-per-txn"));
-    
-    public static final TxnCapabilities MULTI_CONNS_PER_TXN = new 
TxnCapabilities(Symbol.valueOf("amqp:multi-conns-per-txn"));
-    
-
-
-    private TxnCapabilities(Symbol val)
-    {
-        _val = val;
-    }
-
-    @Override
-    public Symbol getValue()
-    {
-        return _val;
-    }
-
-    @Override
-    public String toString()
-    {
-        
-        if(this == LOCAL_TXN)
-        {
-            return "local-txn";
-        }
-        
-        if(this == DISTRIBUTED_TXN)
-        {
-            return "distributed-txn";
-        }
-        
-        if(this == PROMOTABLE_TXN)
-        {
-            return "promotable-txn";
-        }
-        
-        if(this == MULTI_TXNS_PER_SSN)
-        {
-            return "multi-txns-per-ssn";
-        }
-        
-        if(this == MULTI_SSNS_PER_TXN)
-        {
-            return "multi-ssns-per-txn";
-        }
-        
-        if(this == MULTI_CONNS_PER_TXN)
-        {
-            return "multi-conns-per-txn";
-        }
-        
-        else
-        {
-            return String.valueOf(_val);
-        }
-    }
-
-    public static TxnCapabilities valueOf(Object obj)
-    {
-        Symbol val = (Symbol) obj;
-
-        if(LOCAL_TXN._val.equals(val))
-        {
-            return LOCAL_TXN;
-        }
-    
-        if(DISTRIBUTED_TXN._val.equals(val))
-        {
-            return DISTRIBUTED_TXN;
-        }
-    
-        if(PROMOTABLE_TXN._val.equals(val))
-        {
-            return PROMOTABLE_TXN;
-        }
-    
-        if(MULTI_TXNS_PER_SSN._val.equals(val))
-        {
-            return MULTI_TXNS_PER_SSN;
-        }
-    
-        if(MULTI_SSNS_PER_TXN._val.equals(val))
-        {
-            return MULTI_SSNS_PER_TXN;
-        }
-    
-        if(MULTI_CONNS_PER_TXN._val.equals(val))
-        {
-            return MULTI_CONNS_PER_TXN;
-        }
-    
-        // TODO ERROR
-        return null;
-    }
-
-
-
-  }

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapability.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapability.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapability.java
index df16c49..c00dfcb 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapability.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/TxnCapability.java
@@ -24,30 +24,24 @@
 package org.apache.qpid.server.protocol.v1_0.type.transaction;
 
 
+import org.apache.qpid.server.protocol.v1_0.type.RestrictedType;
+import org.apache.qpid.server.protocol.v1_0.type.Symbol;
 
-import org.apache.qpid.server.protocol.v1_0.type.*;
-
-public class TxnCapability
-  implements org.apache.qpid.server.protocol.v1_0.type.TxnCapability, 
RestrictedType<Symbol>
-  
-  {
+public class TxnCapability implements 
org.apache.qpid.server.protocol.v1_0.type.TxnCapability, RestrictedType<Symbol>
+{
+    private final Symbol _val;
 
+    public static final TxnCapability LOCAL_TXN = new 
TxnCapability(Symbol.valueOf("amqp:local-transactions"));
 
+    public static final TxnCapability DISTRIBUTED_TXN =
+            new TxnCapability(Symbol.valueOf("amqp:distributed-transactions"));
 
-    private final Symbol _val;
+    public static final TxnCapability PROMOTABLE_TXN =
+            new TxnCapability(Symbol.valueOf("amqp:promotable-transactions"));
 
-    
-    public static final TxnCapability LOCAL_TXN = new 
TxnCapability(Symbol.valueOf("amqp:local-transactions"));
-    
-    public static final TxnCapability DISTRIBUTED_TXN = new 
TxnCapability(Symbol.valueOf("amqp:distributed-transactions"));
-    
-    public static final TxnCapability PROMOTABLE_TXN = new 
TxnCapability(Symbol.valueOf("amqp:promotable-transactions"));
-    
     public static final TxnCapability MULTI_TXNS_PER_SSN = new 
TxnCapability(Symbol.valueOf("amqp:multi-txns-per-ssn"));
-    
-    public static final TxnCapability MULTI_SSNS_PER_TXN = new 
TxnCapability(Symbol.valueOf("amqp:multi-ssns-per-txn"));
-    
 
+    public static final TxnCapability MULTI_SSNS_PER_TXN = new 
TxnCapability(Symbol.valueOf("amqp:multi-ssns-per-txn"));
 
     private TxnCapability(Symbol val)
     {
@@ -63,32 +57,32 @@ public class TxnCapability
     @Override
     public String toString()
     {
-        
-        if(this == LOCAL_TXN)
+
+        if (this == LOCAL_TXN)
         {
             return "local-txn";
         }
-        
-        if(this == DISTRIBUTED_TXN)
+
+        if (this == DISTRIBUTED_TXN)
         {
             return "distributed-txn";
         }
-        
-        if(this == PROMOTABLE_TXN)
+
+        if (this == PROMOTABLE_TXN)
         {
             return "promotable-txn";
         }
-        
-        if(this == MULTI_TXNS_PER_SSN)
+
+        if (this == MULTI_TXNS_PER_SSN)
         {
             return "multi-txns-per-ssn";
         }
-        
-        if(this == MULTI_SSNS_PER_TXN)
+
+        if (this == MULTI_SSNS_PER_TXN)
         {
             return "multi-ssns-per-txn";
         }
-        
+
         else
         {
             return String.valueOf(_val);
@@ -99,35 +93,32 @@ public class TxnCapability
     {
         Symbol val = (Symbol) obj;
 
-        if(LOCAL_TXN._val.equals(val))
+        if (LOCAL_TXN._val.equals(val))
         {
             return LOCAL_TXN;
         }
-    
-        if(DISTRIBUTED_TXN._val.equals(val))
+
+        if (DISTRIBUTED_TXN._val.equals(val))
         {
             return DISTRIBUTED_TXN;
         }
-    
-        if(PROMOTABLE_TXN._val.equals(val))
+
+        if (PROMOTABLE_TXN._val.equals(val))
         {
             return PROMOTABLE_TXN;
         }
-    
-        if(MULTI_TXNS_PER_SSN._val.equals(val))
+
+        if (MULTI_TXNS_PER_SSN._val.equals(val))
         {
             return MULTI_TXNS_PER_SSN;
         }
-    
-        if(MULTI_SSNS_PER_TXN._val.equals(val))
+
+        if (MULTI_SSNS_PER_TXN._val.equals(val))
         {
             return MULTI_SSNS_PER_TXN;
         }
-    
+
         // TODO ERROR
         return null;
     }
-
-
-
-  }
+}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/CoordinatorConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/CoordinatorConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/CoordinatorConstructor.java
deleted file mode 100644
index 657accb..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/CoordinatorConstructor.java
+++ /dev/null
@@ -1,117 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transaction.codec;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.transaction.*;
-import org.apache.qpid.server.protocol.v1_0.type.transaction.TxnCapability;
-
-import java.util.List;
-
-public class CoordinatorConstructor extends 
AbstractDescribedTypeConstructor<Coordinator>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:coordinator:list"),UnsignedLong.valueOf(0x0000000000000030L),
-    };
-
-    private static final CoordinatorConstructor INSTANCE = new 
CoordinatorConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Coordinator construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Coordinator obj = new Coordinator();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-
-                    if (val instanceof TxnCapability[] )
-                    {
-                        obj.setCapabilities( (TxnCapability[]) val );
-                    }
-                    else if (val instanceof Symbol[])
-                    {
-                        Symbol[] symVal = (Symbol[]) val;
-                        TxnCapability[] cap = new TxnCapability[symVal.length];
-                        int i = 0;
-                        for(Symbol sym : symVal)
-                        {
-                            cap[i++] = TxnCapability.valueOf(sym);
-                        }
-                        obj.setCapabilities(cap);
-                    }
-                    else
-                           {
-                        try
-                        {
-                            obj.setCapabilities( new TxnCapability[] { 
(TxnCapability) val } );
-                        }
-                        catch(ClassCastException e)
-                        {
-                            // TODO Error
-                        }
-                    }
-                    
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DeclareConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DeclareConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DeclareConstructor.java
deleted file mode 100644
index 3fc1f42..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DeclareConstructor.java
+++ /dev/null
@@ -1,100 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transaction.codec;
-
-import java.util.List;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.GlobalTxId;
-import org.apache.qpid.server.protocol.v1_0.type.Symbol;
-import org.apache.qpid.server.protocol.v1_0.type.UnsignedLong;
-import org.apache.qpid.server.protocol.v1_0.type.transaction.Declare;
-
-public class DeclareConstructor extends 
AbstractDescribedTypeConstructor<Declare>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:declare:list"),UnsignedLong.valueOf(0x0000000000000031L),
-    };
-
-    private static final DeclareConstructor INSTANCE = new 
DeclareConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Declare construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Declare obj = new Declare();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setGlobalId( (GlobalTxId) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DeclaredConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DeclaredConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DeclaredConstructor.java
deleted file mode 100644
index 6b6e380..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DeclaredConstructor.java
+++ /dev/null
@@ -1,99 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transaction.codec;
-
-import java.util.List;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.Binary;
-import org.apache.qpid.server.protocol.v1_0.type.UnsignedLong;
-import org.apache.qpid.server.protocol.v1_0.type.transaction.Declared;
-
-public class DeclaredConstructor extends 
AbstractDescribedTypeConstructor<Declared>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            Declared.DECLARED_SYMBOL,UnsignedLong.valueOf(0x0000000000000033L),
-    };
-
-    private static final DeclaredConstructor INSTANCE = new 
DeclaredConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Declared construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Declared obj = new Declared();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setTxnId( (Binary) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DischargeConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DischargeConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DischargeConstructor.java
deleted file mode 100644
index f3c0611..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/DischargeConstructor.java
+++ /dev/null
@@ -1,126 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transaction.codec;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.transaction.*;
-
-
-import java.util.List;
-
-public class DischargeConstructor extends 
AbstractDescribedTypeConstructor<Discharge>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:discharge:list"),UnsignedLong.valueOf(0x0000000000000032L),
-    };
-
-    private static final DischargeConstructor INSTANCE = new 
DischargeConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Discharge construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Discharge obj = new Discharge();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setTxnId( (Binary) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setFail( (Boolean) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/TransactionalStateConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/TransactionalStateConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/TransactionalStateConstructor.java
deleted file mode 100644
index 05a1cf2..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transaction/codec/TransactionalStateConstructor.java
+++ /dev/null
@@ -1,126 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transaction.codec;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.transaction.*;
-
-
-import java.util.List;
-
-public class TransactionalStateConstructor extends 
AbstractDescribedTypeConstructor<TransactionalState>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:transactional-state:list"),UnsignedLong.valueOf(0x0000000000000034L),
-    };
-
-    private static final TransactionalStateConstructor INSTANCE = new 
TransactionalStateConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public TransactionalState construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            TransactionalState obj = new TransactionalState();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setTxnId( (Binary) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setOutcome( (Outcome) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/AmqpError.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/AmqpError.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/AmqpError.java
index 159f943..88c6202 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/AmqpError.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/AmqpError.java
@@ -121,7 +121,6 @@ public class AmqpError implements ErrorCondition, 
RestrictedType<Symbol>
             return FRAME_SIZE_TOO_SMALL;
         }
 
-        // TODO ERROR
         return null;
     }
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Attach.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Attach.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Attach.java
index a821be5..5a40cb3 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Attach.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Attach.java
@@ -30,56 +30,58 @@ import 
org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
 import org.apache.qpid.server.protocol.v1_0.type.BaseSource;
 import org.apache.qpid.server.protocol.v1_0.type.BaseTarget;
 import org.apache.qpid.server.protocol.v1_0.type.Binary;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.DeliveryState;
 import org.apache.qpid.server.protocol.v1_0.type.FrameBody;
 import org.apache.qpid.server.protocol.v1_0.type.Symbol;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedLong;
 
+@CompositeType( symbolicDescriptor = "amqp:attach:list", numericDescriptor = 
0x0000000000000012L)
 public class Attach implements FrameBody
 {
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 0, mandatory = true)
     private String _name;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 1, mandatory = true)
     private UnsignedInteger _handle;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 2, mandatory = true)
     private Role _role;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 3)
     private SenderSettleMode _sndSettleMode;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 4)
     private ReceiverSettleMode _rcvSettleMode;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 5)
     private BaseSource _source;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 6)
     private BaseTarget _target;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 7)
     private Map<Binary, DeliveryState> _unsettled;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 8)
     private Boolean _incompleteUnsettled;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 9)
     private UnsignedInteger _initialDeliveryCount;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 10)
     private UnsignedLong _maxMessageSize;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 11)
     private Symbol[] _offeredCapabilities;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 12)
     private Symbol[] _desiredCapabilities;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 13)
     private Map<Symbol, Object> _properties;
 
     public String getName()

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Begin.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Begin.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Begin.java
index 4a280e4..c3de446 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Begin.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Begin.java
@@ -27,37 +27,39 @@ import java.util.Arrays;
 import java.util.Map;
 
 import org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.FrameBody;
 import org.apache.qpid.server.protocol.v1_0.type.Symbol;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedShort;
 
+@CompositeType( symbolicDescriptor = "amqp:begin:list", numericDescriptor = 
0x0000000000000011L)
 public class Begin implements FrameBody
 {
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 0)
     private UnsignedShort _remoteChannel;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 1, mandatory = true)
     private UnsignedInteger _nextOutgoingId;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 2, mandatory = true)
     private UnsignedInteger _incomingWindow;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 3, mandatory = true)
     private UnsignedInteger _outgoingWindow;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 4)
     private UnsignedInteger _handleMax;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 5)
     private Symbol[] _offeredCapabilities;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 6)
     private Symbol[] _desiredCapabilities;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 7)
     private Map<Symbol, Object> _properties;
 
     public UnsignedShort getRemoteChannel()

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Close.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Close.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Close.java
index 2505ca1..77a6ff6 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Close.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Close.java
@@ -24,13 +24,15 @@ package org.apache.qpid.server.protocol.v1_0.type.transport;
 
 
 import org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.ErrorCarryingFrameBody;
 
+@CompositeType( symbolicDescriptor = "amqp:close:list", numericDescriptor = 
0x0000000000000018L)
 public class Close implements ErrorCarryingFrameBody
 {
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 0)
     private Error _error;
 
     @Override

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/ConnectionError.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/ConnectionError.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/ConnectionError.java
index 491984b..e1fe139 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/ConnectionError.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/ConnectionError.java
@@ -69,7 +69,6 @@ public class ConnectionError implements ErrorCondition, 
RestrictedType<Symbol>
             return SOCKET_ERROR;
         }
 
-        // TODO ERROR
         return null;
     }
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Detach.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Detach.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Detach.java
index 59454e2..96b596b 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Detach.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Detach.java
@@ -24,20 +24,22 @@ package org.apache.qpid.server.protocol.v1_0.type.transport;
 
 
 import org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.ErrorCarryingFrameBody;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 
+@CompositeType( symbolicDescriptor = "amqp:detach:list", numericDescriptor = 
0x0000000000000016L)
 public class Detach implements ErrorCarryingFrameBody
 {
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 0, mandatory = true)
     private UnsignedInteger _handle;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 1)
     private Boolean _closed;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 2)
     private Error _error;
 
     public UnsignedInteger getHandle()

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Disposition.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Disposition.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Disposition.java
index 133f8c4..9650633 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Disposition.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Disposition.java
@@ -24,30 +24,32 @@ package org.apache.qpid.server.protocol.v1_0.type.transport;
 
 
 import org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.DeliveryState;
 import org.apache.qpid.server.protocol.v1_0.type.FrameBody;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 
+@CompositeType( symbolicDescriptor = "amqp:disposition:list", 
numericDescriptor = 0x0000000000000015L)
 public class Disposition implements FrameBody
 {
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 0, mandatory = true)
     private Role _role;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 1, mandatory = true)
     private UnsignedInteger _first;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 2)
     private UnsignedInteger _last;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 3)
     private Boolean _settled;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 4)
     private DeliveryState _state;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 5)
     private Boolean _batchable;
 
     public Role getRole()

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/End.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/End.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/End.java
index 0756790..a486bf6 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/End.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/End.java
@@ -24,13 +24,15 @@ package org.apache.qpid.server.protocol.v1_0.type.transport;
 
 
 import org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.ErrorCarryingFrameBody;
 
+@CompositeType( symbolicDescriptor = "amqp:end:list", numericDescriptor = 
0x0000000000000017L)
 public class End implements ErrorCarryingFrameBody
 {
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 0)
     private Error _error;
 
     @Override

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Error.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Error.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Error.java
index 0cf3eea..40217d4 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Error.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Error.java
@@ -25,19 +25,23 @@ package org.apache.qpid.server.protocol.v1_0.type.transport;
 
 import java.util.Map;
 
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.ErrorCondition;
+import org.apache.qpid.server.protocol.v1_0.type.Symbol;
 
+@CompositeType( symbolicDescriptor = "amqp:error:list", numericDescriptor = 
0x000000000000001DL)
 public class Error
 {
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 0, mandatory = true,
+            deserializationConverter = 
"org.apache.qpid.server.protocol.v1_0.DeserializationFactories.convertToErrorCondition")
     private ErrorCondition _condition;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 1)
     private String _description;
 
-    @CompositeTypeField
-    private Map _info;
+    @CompositeTypeField(index = 2)
+    private Map<Symbol, Object> _info;
 
     public Error()
     {
@@ -69,12 +73,12 @@ public class Error
         _description = description;
     }
 
-    public Map getInfo()
+    public Map<Symbol, Object> getInfo()
     {
         return _info;
     }
 
-    public void setInfo(Map info)
+    public void setInfo(Map<Symbol, Object> info)
     {
         _info = info;
     }

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Flow.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Flow.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Flow.java
index ce9d63c..6eee901 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Flow.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Flow.java
@@ -26,45 +26,47 @@ package org.apache.qpid.server.protocol.v1_0.type.transport;
 import java.util.Map;
 
 import org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.FrameBody;
 import org.apache.qpid.server.protocol.v1_0.type.Symbol;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 
+@CompositeType( symbolicDescriptor = "amqp:flow:list", numericDescriptor = 
0x0000000000000013L)
 public class Flow implements FrameBody
 {
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 0)
     private UnsignedInteger _nextIncomingId;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 1, mandatory = true)
     private UnsignedInteger _incomingWindow;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 2, mandatory = true)
     private UnsignedInteger _nextOutgoingId;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 3, mandatory = true)
     private UnsignedInteger _outgoingWindow;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 4)
     private UnsignedInteger _handle;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 5)
     private UnsignedInteger _deliveryCount;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 6)
     private UnsignedInteger _linkCredit;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 7)
     private UnsignedInteger _available;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 8)
     private Boolean _drain;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 9)
     private Boolean _echo;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 10)
     private Map<Symbol, Object> _properties;
 
     public UnsignedInteger getNextIncomingId()

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/LinkError.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/LinkError.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/LinkError.java
index 4c4e08a..99ec089 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/LinkError.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/LinkError.java
@@ -74,7 +74,6 @@ public class LinkError implements ErrorCondition, 
RestrictedType<Symbol>
             return STOLEN;
         }
 
-        // TODO ERROR
         return null;
     }
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Open.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Open.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Open.java
index 7ea1a2b..eeae127 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Open.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Open.java
@@ -27,43 +27,45 @@ import java.util.Arrays;
 import java.util.Map;
 
 import org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.FrameBody;
 import org.apache.qpid.server.protocol.v1_0.type.Symbol;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedShort;
 
+@CompositeType( symbolicDescriptor = "amqp:open:list", numericDescriptor = 
0x0000000000000010L)
 public class Open implements FrameBody
 {
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 0, mandatory = true)
     private String _containerId;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 1)
     private String _hostname;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 2)
     private UnsignedInteger _maxFrameSize;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 3)
     private UnsignedShort _channelMax;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 4)
     private UnsignedInteger _idleTimeOut;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 5)
     private Symbol[] _outgoingLocales;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 6)
     private Symbol[] _incomingLocales;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 7)
     private Symbol[] _offeredCapabilities;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 8)
     private Symbol[] _desiredCapabilities;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 9)
     private Map<Symbol, Object> _properties;
 
     public String getContainerId()

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/SessionError.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/SessionError.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/SessionError.java
index 49b40b1..190bb3a 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/SessionError.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/SessionError.java
@@ -68,7 +68,6 @@ public class SessionError implements ErrorCondition, 
RestrictedType<Symbol>
             return UNATTACHED_HANDLE;
         }
 
-        // TODO ERROR
         return null;
     }
 

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Transfer.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Transfer.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Transfer.java
index 75cd9dc..d757cb7 100644
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Transfer.java
+++ 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/Transfer.java
@@ -29,46 +29,48 @@ import java.util.List;
 import org.apache.qpid.server.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.server.protocol.v1_0.ConnectionHandler;
 import org.apache.qpid.server.protocol.v1_0.type.Binary;
+import org.apache.qpid.server.protocol.v1_0.CompositeType;
+import org.apache.qpid.server.protocol.v1_0.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.DeliveryState;
 import org.apache.qpid.server.protocol.v1_0.type.FrameBody;
-import org.apache.qpid.server.protocol.v1_0.type.CompositeTypeField;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 
+@CompositeType( symbolicDescriptor = "amqp:transfer:list", numericDescriptor = 
0x0000000000000014L)
 public class Transfer implements FrameBody
 {
     private volatile List<QpidByteBuffer> _payload;
 
-    @CompositeTypeField(mandatory = true)
+    @CompositeTypeField(index = 0, mandatory = true)
     private UnsignedInteger _handle;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 1)
     private UnsignedInteger _deliveryId;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 2)
     private Binary _deliveryTag;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 3)
     private UnsignedInteger _messageFormat;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 4)
     private Boolean _settled;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 5)
     private Boolean _more;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 6)
     private ReceiverSettleMode _rcvSettleMode;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 7)
     private DeliveryState _state;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 8)
     private Boolean _resume;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 9)
     private Boolean _aborted;
 
-    @CompositeTypeField
+    @CompositeTypeField(index = 10)
     private Boolean _batchable;
 
     public UnsignedInteger getHandle()

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/AttachConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/AttachConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/AttachConstructor.java
deleted file mode 100644
index 7d68efe..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/AttachConstructor.java
+++ /dev/null
@@ -1,465 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transport.codec;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.transport.*;
-
-
-import java.util.List;
-import java.util.Map;
-
-public class AttachConstructor extends AbstractDescribedTypeConstructor<Attach>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:attach:list"),UnsignedLong.valueOf(0x0000000000000012L),
-    };
-
-    private static final AttachConstructor INSTANCE = new AttachConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Attach construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Attach obj = new Attach();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setName( (String) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setHandle( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setRole( Role.valueOf( val ) );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setSndSettleMode( SenderSettleMode.valueOf( val ) 
);
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setRcvSettleMode( ReceiverSettleMode.valueOf( val 
) );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setSource( (BaseSource) val);
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setTarget( (BaseTarget) val);
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setUnsettled( (Map) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setIncompleteUnsettled( (Boolean) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setInitialDeliveryCount( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setMaxMessageSize( (UnsignedLong) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-
-                    if (val instanceof Symbol[] )
-                    {
-                        obj.setOfferedCapabilities( (Symbol[]) val );
-                    }
-                    else
-                           {
-                        try
-                        {
-                            obj.setOfferedCapabilities( new Symbol[] { 
(Symbol) val } );
-                        }
-                        catch(ClassCastException e)
-                        {
-                            // TODO Error
-                        }
-                    }
-                    
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-
-                    if (val instanceof Symbol[] )
-                    {
-                        obj.setDesiredCapabilities( (Symbol[]) val );
-                    }
-                    else
-                           {
-                        try
-                        {
-                            obj.setDesiredCapabilities( new Symbol[] { 
(Symbol) val } );
-                        }
-                        catch(ClassCastException e)
-                        {
-                            // TODO Error
-                        }
-                    }
-                    
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setProperties( (Map) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/BeginConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/BeginConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/BeginConstructor.java
deleted file mode 100644
index 6acb6cc..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/BeginConstructor.java
+++ /dev/null
@@ -1,303 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transport.codec;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.transport.*;
-
-
-import java.util.List;
-import java.util.Map;
-
-public class BeginConstructor extends AbstractDescribedTypeConstructor<Begin>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:begin:list"),UnsignedLong.valueOf(0x0000000000000011L),
-    };
-
-    private static final BeginConstructor INSTANCE = new BeginConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Begin construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Begin obj = new Begin();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setRemoteChannel( (UnsignedShort) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setNextOutgoingId( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setIncomingWindow( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setOutgoingWindow( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setHandleMax( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-
-                    if (val instanceof Symbol[] )
-                    {
-                        obj.setOfferedCapabilities( (Symbol[]) val );
-                    }
-                    else
-                           {
-                        try
-                        {
-                            obj.setOfferedCapabilities( new Symbol[] { 
(Symbol) val } );
-                        }
-                        catch(ClassCastException e)
-                        {
-                            // TODO Error
-                        }
-                    }
-                    
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-
-                    if (val instanceof Symbol[] )
-                    {
-                        obj.setDesiredCapabilities( (Symbol[]) val );
-                    }
-                    else
-                           {
-                        try
-                        {
-                            obj.setDesiredCapabilities( new Symbol[] { 
(Symbol) val } );
-                        }
-                        catch(ClassCastException e)
-                        {
-                            // TODO Error
-                        }
-                    }
-                    
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setProperties( (Map) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/CloseConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/CloseConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/CloseConstructor.java
deleted file mode 100644
index fd8d957..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/CloseConstructor.java
+++ /dev/null
@@ -1,99 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transport.codec;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.transport.*;
-
-
-import java.util.List;
-
-public class CloseConstructor extends AbstractDescribedTypeConstructor<Close>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:close:list"),UnsignedLong.valueOf(0x0000000000000018L),
-    };
-
-    private static final CloseConstructor INSTANCE = new CloseConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Close construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Close obj = new Close();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setError( 
(org.apache.qpid.server.protocol.v1_0.type.transport.Error) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/DetachConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/DetachConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/DetachConstructor.java
deleted file mode 100644
index 9d0efea..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/DetachConstructor.java
+++ /dev/null
@@ -1,153 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transport.codec;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.transport.*;
-
-
-import java.util.List;
-
-public class DetachConstructor extends AbstractDescribedTypeConstructor<Detach>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:detach:list"),UnsignedLong.valueOf(0x0000000000000016L),
-    };
-
-    private static final DetachConstructor INSTANCE = new DetachConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Detach construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Detach obj = new Detach();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setHandle( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setClosed( (Boolean) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setError( 
(org.apache.qpid.server.protocol.v1_0.type.transport.Error) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}

http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/6a267175/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/DispositionConstructor.java
----------------------------------------------------------------------
diff --git 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/DispositionConstructor.java
 
b/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/DispositionConstructor.java
deleted file mode 100644
index 03755de..0000000
--- 
a/broker-plugins/amqp-1-0-protocol/src/main/java/org/apache/qpid/server/protocol/v1_0/type/transport/codec/DispositionConstructor.java
+++ /dev/null
@@ -1,234 +0,0 @@
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements.  See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership.  The ASF licenses this file
-* 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.
-*
-*/
-
-
-package org.apache.qpid.server.protocol.v1_0.type.transport.codec;
-
-import 
org.apache.qpid.server.protocol.v1_0.codec.AbstractDescribedTypeConstructor;
-import 
org.apache.qpid.server.protocol.v1_0.codec.DescribedTypeConstructorRegistry;
-import org.apache.qpid.server.protocol.v1_0.type.*;
-import org.apache.qpid.server.protocol.v1_0.type.transport.*;
-
-
-import java.util.List;
-
-public class DispositionConstructor extends 
AbstractDescribedTypeConstructor<Disposition>
-{
-    private static final Object[] DESCRIPTORS =
-    {
-            
Symbol.valueOf("amqp:disposition:list"),UnsignedLong.valueOf(0x0000000000000015L),
-    };
-
-    private static final DispositionConstructor INSTANCE = new 
DispositionConstructor();
-
-    public static void register(DescribedTypeConstructorRegistry registry)
-    {
-        for(Object descriptor : DESCRIPTORS)
-        {
-            registry.register(descriptor, INSTANCE);
-        }
-    }
-
-    @Override
-    public Disposition construct(Object underlying)
-    {
-        if(underlying instanceof List)
-        {
-            List list = (List) underlying;
-            Disposition obj = new Disposition();
-            int position = 0;
-            final int size = list.size();
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setRole( Role.valueOf( val ) );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setFirst( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setLast( (UnsignedInteger) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setSettled( (Boolean) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setState( (DeliveryState) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-            if(position < size)
-            {
-                Object val = list.get(position);
-                position++;
-
-                if(val != null)
-                {
-
-                    try
-                    {
-                        obj.setBatchable( (Boolean) val );
-                    }
-                    catch(ClassCastException e)
-                    {
-
-                        // TODO Error
-                    }
-
-                }
-
-
-            }
-            else
-            {
-                return obj;
-            }
-
-
-            return obj;
-        }
-        else
-        {
-            // TODO - error
-            return null;
-        }
-    }
-
-
-}


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to