Esempio n. 1
0
 public override object ReadValue(HessianReader reader, HessianContext context, Type objectType, byte initialOctet)
 {
     if (StringConverter.CanRead(initialOctet))
     {
         var typeName = (string)StringConverter.ReadValue(reader, context, typeof(string), initialOctet);
         var type     = GetType(typeName);
         context.TypeRefs.AddItem(type);
         return(type);
     }
     else if (IntConverter.CanRead(initialOctet))
     {
         var typeIndex = (int)IntConverter.ReadValue(reader, context, typeof(int), initialOctet);
         return(context.TypeRefs.GetItem(typeIndex));
     }
     else
     {
         throw Exceptions.UnExpectedInitialOctet(this, initialOctet);
     }
 }
Esempio n. 2
0
 public override bool CanRead(byte initialOctet)
 {
     return(StringConverter.CanRead(initialOctet) || IntConverter.CanRead(initialOctet));
 }