Compartilhar via


IFileStagingArtifact Interface

Definição

Contém informações sobre um processo de preparo de arquivos. O preparo de arquivos normalmente é executado para um CloudTask (consulte FilesToStage).

public interface IFileStagingArtifact
type IFileStagingArtifact = interface
Public Interface IFileStagingArtifact
Derivado

Comentários

IFileStagingArtifact permite que um aplicativo personalize e obtenha informações sobre o processo de carregamento de arquivos para a nuvem, por exemplo, como parte de uma operação relacionada à tarefa, como JobOperations.AddTaskAsync ou CloudJob.AddTaskAsync. Os aplicativos podem usar essas informações para, por exemplo, descobrir sobre contêineres que foram criados no Armazenamento do Azure como parte do processo de carregamento.

Quando JobOperations.AddTaskAsync é chamado, o cliente do Lote envia as tarefas para o serviço lote em coleções. À medida que cada coleção é processada, o cliente do Lote executa o preparo de arquivos para essa coleção: ele examina as tarefas para ver se alguma delas especifica alguma FilesToStagee, se for o caso, cria uma entrada de dicionário para cada tipo de IFileStagingProvider na coleção FilesToStage. A chave da entrada do dicionário é a Type do IFileStagingProvider e o valor é uma instância da implementação correspondente de IFileStagingArtifact. Por exemplo, se FilesToStage incluir um ou mais objetos FileToStage (da biblioteca Microsoft.Azure.Batch.FileStaging), o dicionário conterá uma entrada cuja chave é typeof(FileToStage) e cujo valor é uma instância de SequentialFileStagingArtifact.

Quando a operação Adicionar Tarefa for concluída ou durante a operação Adicionar Tarefa se o aplicativo tiver vários threads, você poderá examinar o dicionário e converter cada IFileStagingArtifact no tipo apropriado para recuperar as informações específicas do tipo. Por exemplo, se a operação Adicionar Tarefa tiver especificado um ou mais objetos FileToStage, você poderá localizar a entrada de dicionário chaveada por typeof(FileToStage), converter o valor em SequentialFileStagingArtifact e examinar a propriedade SequentialFileStagingArtifact.BlobContainerCreated para determinar se o processo de upload criou um contêiner de blob no Armazenamento do Azure e, se for o caso, o nome desse contêiner. Este exemplo pode ser útil para limpar contêineres criados automaticamente.

(As operações Adicionar Tarefa de Tarefa de tarefa única funcionam da mesma forma, exceto que em uma operação adicionar tarefa de várias tarefas, há um dicionário para cada coleção de tarefas e os dicionários são coletados em um ConcurrentBag<T>, enquanto em uma operação adicionar tarefa de tarefa única há apenas um único dicionário.)

Em uma operação Adicionar Tarefa de tarefa única, você também pode usar o dicionário para personalizar o processo de preparo de arquivos, preenchendo-o previamente com entradas apropriadas. Por exemplo, suponha que você queira controlar o NamingFragment para um grupo de objetos FileToStage. Em seguida, você pode inicializar o dicionário com { typeof(FileToStage), new SequentialFileStagingArtifact { NamingFragment = "myname" } } antes de passá-lo para AddTaskAsync. A implementação FileToStage de IFileStagingProvider usaria seu SequentialFileStagingArtifact em vez de criar seu próprio. (Esse recurso não está disponível em várias tarefas adicionar operações de tarefa.)

Você também poderá encontrar IFileStagingArtifact se estiver desenvolvendo um personalizado IFileStagingProvider. Nesse caso, você normalmente criará uma implementação personalizada de IFileStagingArtifact para relatar informações específicas da implementação sobre o processo de preparo de arquivos.

Propriedades

NamingFragment

Obtém ou define um fragmento de nome que pode ser usado ao construir nomes padrão.

Aplica-se a