public ObjectValueBinder(IStorageBlob blob, WatchableCloudBlobStream stream, ICloudBlobStreamBinder <TValue> objectBinder) { _blob = blob; _stream = stream; _objectBinder = objectBinder; }
static void AddAdapter <T>(ConverterManager cm, ICloudBlobStreamBinder <T> x) { cm.AddExactConverter <Stream, T>(stream => x.ReadFromStreamAsync(stream, CancellationToken.None).Result); cm.AddExactConverter <ApplyConversion <T, Stream>, object>(pair => { T value = pair.Value; Stream stream = pair.Existing; x.WriteToStreamAsync(value, stream, CancellationToken.None).Wait(); return(null); }); }
public ObjectArgumentBinding(ICloudBlobStreamBinder <TValue> objectBinder, IContextGetter <IBlobWrittenWatcher> blobWrittenWatcherGetter) { if (objectBinder == null) { throw new ArgumentNullException("objectBinder"); } if (blobWrittenWatcherGetter == null) { throw new ArgumentNullException("blobWrittenWatcherGetter"); } _objectBinder = objectBinder; _blobWrittenWatcherGetter = blobWrittenWatcherGetter; }
public ObjectArgumentBinding(ICloudBlobStreamBinder <TValue> objectBinder) { _objectBinder = objectBinder; }