+ if (data is ILogicalThreadAffinative) {
+ LogicalSetData (name, data);
+ } else {
+ LogicalDatastore.Remove (name);
+ Datastore [name] = data;
+ }
+ }
+
+ public static object LogicalGetData (string name)
+ {
+ return LogicalDatastore [name];
+ }
+
+ public static void LogicalSetData (string name, object data)
+ {
+ Datastore.Remove (name);
+ LogicalDatastore [name] = data;