public JsonBinaryAnnotation(BinaryAnnotation ba)
        {
            key            = ba.Key;
            value          = ba.Value;
            annotationType = ba.Annotation_type.ToString();
            endpoint       = new JsonEndpoint(ba.Host);
            switch (ba.Annotation_type)
            {
            case AnnotationType.BOOL: value = BitConverter.ToBoolean(ba.Value, 0); break;

            case AnnotationType.BYTES: value = Convert.ToBase64String(ba.Value); break;

            case AnnotationType.I16: value = BitConverter.ToInt16(ba.Value, 0); break;

            case AnnotationType.I32: value = BitConverter.ToInt32(ba.Value, 0); break;

            case AnnotationType.I64: value = BitConverter.ToInt64(ba.Value, 0); break;

            case AnnotationType.DOUBLE: value = BitConverter.ToDouble(ba.Value, 0); break;

            case AnnotationType.STRING: value = Encoding.UTF8.GetString(ba.Value); break;

            default: throw new Exception(string.Format("Unsupported annotation type: {0}", ba));
            }
        }
Пример #2
0
 public JsonAnnotation(Annotation annotation)
 {
     timestamp = annotation.Timestamp;
     value     = annotation.Value;
     endpoint  = new JsonEndpoint(annotation.Host);
 }