public override bool Execute()
{
if (Containers == null)
Log.LogMessage("{0}: Listing containers...", SourceProvider.Name);
var containers = (Containers == null)
? SourceProvider.Containers.FindAll()
: (from c in Containers
select SourceProvider.NewContainer(c.ItemSpec, null)
);
foreach (var container in containers)
{
Log.LogMessage("{0}: Container {1}", TargetProvider.Name, container.Name);
var container2 = TargetProvider.Containers[container.Name];
container2.CreateIfNotExists();
foreach (var blob in container.Blobs.Find(_select))
{
Log.LogMessage(" Copying Blob {0}", blob.Path);
var blob2 = container2.Blobs[blob.Path];
blob.CopyTo(blob2, BlobOptions.Default, BlobCopyCondition.IfNewer);
}
}
return true;
}