예제 #1
0
파일: Store.cs 프로젝트: charlesw/airion
 public Store(IConfiguration configuration)
 {
     _configuration = configuration;
     _persistenceProvider = _configuration.BuildProvider();
     _currentConversation = _configuration.BuildValueStore();
     _createSessionAndTransactionManager = _configuration.CreateSessionAndTransactionManager;
 }
예제 #2
0
        public static double GetVariableFloat64(
            [InputPin(PropertyMode = PropertyMode.Default)] string name = "var1",
            [InputPin(PropertyMode = PropertyMode.Default)] GraphValueStoreType store = GraphValueStoreType.PersistentStore,
            [InputPin(PropertyMode = PropertyMode.Default)] double?defaultValue       = null
            )
        {
            IValueStore valueStore = GetStore(store);

            return(defaultValue.HasValue ? valueStore.GetFloat64(name, defaultValue.Value) : valueStore.GetFloat64(name));
        }
예제 #3
0
        public static bool GetVariableBoolean(
            [InputPin(PropertyMode = PropertyMode.Default)] string name = "var1",
            [InputPin(PropertyMode = PropertyMode.Default)] GraphValueStoreType store = GraphValueStoreType.PersistentStore,
            [InputPin(PropertyMode = PropertyMode.Default)] bool?defaultValue         = null
            )
        {
            IValueStore valueStore = GetStore(store);

            return(defaultValue.HasValue ? valueStore.GetBoolean(name, defaultValue.Value) : valueStore.GetBoolean(name));
        }
예제 #4
0
        public static void SetVariableString(
            [InputPin(PropertyMode = PropertyMode.Allow)] string value,
            [InputPin(PropertyMode = PropertyMode.Default)] string name = "var1",
            [InputPin(PropertyMode = PropertyMode.Default)] GraphValueStoreType store = GraphValueStoreType.PersistentStore
            )
        {
            IValueStore valueStore = GetStore(store);

            valueStore.SetString(name, value);
        }
예제 #5
0
        public static object GetVariable(
            [InputPin(PropertyMode = PropertyMode.Default)] string name = "var1",
            [InputPin(PropertyMode = PropertyMode.Default)] GraphValueStoreType store = GraphValueStoreType.PersistentStore,
            [InputPin(PropertyMode = PropertyMode.Default)] object defaultValue       = null
            )
        {
            IValueStore valueStore = GetStore(store);;

            if (!valueStore.TryGetValue(name, out var result))
            {
                return(defaultValue);
            }
            return(result);
        }
예제 #6
0
        public static async Task <PublicKey> GetPublicKey(this IValueStore r, byte[] pkhash,
                                                          CancellationToken cancellationToken)
        {
            var dht = r as IPublicKeyFetcher;

            if (dht != null)
            {
                return(await dht.GetPublicKey(new PeerId(pkhash), cancellationToken));
            }

            var key   = $"/pk/{Encoding.UTF8.GetString(pkhash)}";
            var pkval = await r.GetValue(key, cancellationToken);

            return(pkval != null?PublicKey.Unmarshal(pkval) : null);
        }
        public static ScriptableObject WrapDefault <T>() where T : struct
        {
            Type genericType = typeof(GenericStructWrapper <>).MakeGenericType(typeof(T));
            Type dynamicType = DynamicTypeBuilder.MakeDerivedType <T>(genericType);

            var             dynamicTypeInstance = ScriptableObject.CreateInstance(dynamicType);
            IValueStore <T> valueStore          = dynamicTypeInstance as IValueStore <T>;

            if (valueStore == null)
            {
                return(null);
            }

            valueStore.val = default(T);

            return(dynamicTypeInstance);
        }
예제 #8
0
        public static string GetVariableString(
            [InputPin(PropertyMode = PropertyMode.Default)] string name = "var1",
            [InputPin(PropertyMode = PropertyMode.Default)] GraphValueStoreType store = GraphValueStoreType.PersistentStore,
            [InputPin(PropertyMode = PropertyMode.Default)] string defaultValue       = null
            )
        {
            IValueStore valueStore = GetStore(store);

            if (defaultValue != null)
            {
                return(valueStore.GetString(name, defaultValue));
            }
            else
            {
                return(valueStore.GetString(name));
            }
        }
예제 #9
0
 internal UInt64ArrayValue(IValueStore <ulong[]> store)
 {
     _valueStore = store;
 }
예제 #10
0
 internal BoolArrayValue(IValueStore <bool[]> store)
 {
     _valueStore = store;
 }
예제 #11
0
 internal DoubleValue(IValueStore <double> store)
 {
     _valueStore = store;
 }
예제 #12
0
 public PyObjectEvaluationResult(DkmProcess process, string fullName, IValueStore<PyObject> valueStore, string cppTypeName, bool hasCppView, bool isOwned) {
     Process = process;
     FullName = fullName;
     ValueStore = valueStore;
     CppTypeName = cppTypeName;
     HasCppView = hasCppView;
     IsOwned = isOwned;
 }
예제 #13
0
 internal StringArrayValue(IValueStore <string[]> store)
 {
     _valueStore = store;
 }
예제 #14
0
 internal SingleValue(IValueStore <float> store)
 {
     _valueStore = store;
 }
예제 #15
0
 internal DecimalValue(IValueStore <decimal> store)
 {
     _valueStore = store;
 }
예제 #16
0
 internal DateTimeValue(IValueStore <DateTime> store)
 {
     _valueStore = store;
 }
예제 #17
0
 internal UInt32Value(IValueStore <uint> store)
 {
     _valueStore = store;
 }
예제 #18
0
 internal SByteValue(IValueStore <sbyte> store)
 {
     _valueStore = store;
 }
예제 #19
0
 internal ByteValue(IValueStore <byte> store)
 {
     _valueStore = store;
 }
예제 #20
0
 internal CharValue(IValueStore <char> store)
 {
     _valueStore = store;
 }
예제 #21
0
 internal Int32Value(IValueStore <int> store)
 {
     _valueStore = store;
 }
예제 #22
0
 internal UInt16ArrayValue(IValueStore <ushort[]> store)
 {
     _valueStore = store;
 }
예제 #23
0
 internal UInt64Value(IValueStore <ulong> store)
 {
     _valueStore = store;
 }
예제 #24
0
 internal BoolValue(IValueStore <bool> store)
 {
     _valueStore = store;
 }
예제 #25
0
 internal DecimalArrayValue(IValueStore <decimal[]> store)
 {
     _valueStore = store;
 }
예제 #26
0
 internal ByteArrayValue(IValueStore <byte[]> store)
 {
     _valueStore = store;
 }
예제 #27
0
 internal UInt32ArrayValue(IValueStore <uint[]> store)
 {
     _valueStore = store;
 }
예제 #28
0
 internal StringValue(IValueStore <string> store)
 {
     _valueStore = store;
 }
예제 #29
0
 internal DateTimeArrayValue(IValueStore <DateTime[]> store)
 {
     _valueStore = store;
 }
예제 #30
0
 public PythonEvaluationResult(IValueStore valueStore, string name = null) {
     ValueStore = valueStore;
     Name = name;
     Category = DkmEvaluationResultCategory.Data;
 }
예제 #31
0
 internal DoubleArrayValue(IValueStore <double[]> store)
 {
     _valueStore = store;
 }
예제 #32
0
 internal UInt16Value(IValueStore <ushort> store)
 {
     _valueStore = store;
 }
예제 #33
0
 public ConfigurationManager(IDataContext context)
 {
     _valueStore            = context.GetValueStore();
     _certificateExclusions = context.GetRepository <CertificateDetails>();
 }