Пример #1
0
 public PrimitiveValue(ushort value)
     : this()
 {
     valueType   = PrimitiveValueType.UShort;
     ushortValue = value;
 }
Пример #2
0
 public PrimitiveValue(int value)
     : this()
 {
     valueType = PrimitiveValueType.Int;
     intValue  = value;
 }
Пример #3
0
 public PrimitiveValue(sbyte value)
     : this()
 {
     valueType  = PrimitiveValueType.SByte;
     sbyteValue = value;
 }
Пример #4
0
 public PrimitiveValue(short value)
     : this()
 {
     valueType  = PrimitiveValueType.Short;
     shortValue = value;
 }
Пример #5
0
 public PrimitiveValue(char value)
     : this()
 {
     valueType = PrimitiveValueType.Char;
     charValue = value;
 }
Пример #6
0
 public PrimitiveValue(byte value)
     : this()
 {
     valueType = PrimitiveValueType.Byte;
     byteValue = value;
 }
Пример #7
0
 public PrimitiveValue(double value)
     : this()
 {
     valueType   = PrimitiveValueType.Double;
     doubleValue = value;
 }
Пример #8
0
 public PrimitiveValue(bool value)
     : this()
 {
     valueType = PrimitiveValueType.Bool;
     boolValue = value;
 }
Пример #9
0
 public PrimitiveValue(ulong value)
     : this()
 {
     valueType  = PrimitiveValueType.ULong;
     ulongValue = value;
 }
Пример #10
0
 public PrimitiveValue(float value)
     : this()
 {
     valueType  = PrimitiveValueType.Float;
     floatValue = value;
 }
Пример #11
0
 public PrimitiveValue(long value)
     : this()
 {
     valueType = PrimitiveValueType.Long;
     longValue = value;
 }
Пример #12
0
 public PrimitiveValue(uint value)
     : this()
 {
     valueType = PrimitiveValueType.UInt;
     uintValue = value;
 }
Пример #13
0
 public PrimitiveTypeValueImpl(T value, PrimitiveValueType type) : base(value, type)
 {
 }
Пример #14
0
        public virtual TypedValue toTypedValue(ProcessEngine processEngine, ObjectMapper objectMapper)
        {
            ValueTypeResolver valueTypeResolver = processEngine.ProcessEngineConfiguration.ValueTypeResolver;

            if (string.ReferenceEquals(type, null))
            {
                if (valueInfo != null && valueInfo[ValueType.VALUE_INFO_TRANSIENT] is bool?)
                {
                    return(Variables.untypedValue(value, (bool?)valueInfo[ValueType.VALUE_INFO_TRANSIENT]));
                }
                return(Variables.untypedValue(value));
            }

            ValueType valueType = valueTypeResolver.typeForName(fromRestApiTypeName(type));

            if (valueType == null)
            {
                throw new RestException(Status.BAD_REQUEST, string.Format("Unsupported value type '{0}'", type));
            }
            else
            {
                if (valueType is PrimitiveValueType)
                {
                    PrimitiveValueType primitiveValueType = (PrimitiveValueType)valueType;
                    Type   javaType    = primitiveValueType.JavaType;
                    object mappedValue = null;
                    try
                    {
                        if (value != null)
                        {
                            if (javaType.IsAssignableFrom(value.GetType()))
                            {
                                mappedValue = value;
                            }
                            else
                            {
                                // use jackson to map the value to the requested java type
                                mappedValue = objectMapper.readValue("\"" + value + "\"", javaType);
                            }
                        }
                        return(valueType.createValue(mappedValue, valueInfo));
                    }
                    catch (Exception e)
                    {
//JAVA TO C# CONVERTER WARNING: The .NET Type.FullName property will not always yield results identical to the Java Class.getName method:
                        throw new InvalidRequestException(Status.BAD_REQUEST, e, string.Format("Cannot convert value '{0}' of type '{1}' to java type {2}", value, type, javaType.FullName));
                    }
                }
                else if (valueType is SerializableValueType)
                {
                    if (value != null && !(value is string))
                    {
                        throw new InvalidRequestException(Status.BAD_REQUEST, "Must provide 'null' or String value for value of SerializableValue type '" + type + "'.");
                    }
                    return(((SerializableValueType)valueType).createValueFromSerialized((string)value, valueInfo));
                }
                else if (valueType is FileValueType)
                {
                    if (value is string)
                    {
                        value = Base64.decodeBase64((string)value);
                    }

                    return(valueType.createValue(value, valueInfo));
                }
                else
                {
                    return(valueType.createValue(value, valueInfo));
                }
            }
        }
Пример #15
0
 public PrimitiveValueSerializer(PrimitiveValueType variableType) : base(variableType)
 {
 }