CloudQueuesProvider.ListQueuesAsync Method |
This API is preliminary and subject to change.
Gets a list of queues.
Namespace: net.openstack.Providers.RackspaceAssembly: openstacknet (in openstacknet.dll) Version: 1.7.7+Branch.master.Sha.25d803f397c8693c2c13777ef6675f796f520f2c
Syntaxpublic Task<ReadOnlyCollectionPage<CloudQueue>> ListQueuesAsync(
QueueName marker,
Nullable<int> limit,
bool detailed,
CancellationToken cancellationToken
)
Public Function ListQueuesAsync (
marker As QueueName,
limit As Nullable(Of Integer),
detailed As Boolean,
cancellationToken As CancellationToken
) As Task(Of ReadOnlyCollectionPage(Of CloudQueue))
public:
virtual Task<ReadOnlyCollectionPage<CloudQueue^>^>^ ListQueuesAsync(
QueueName^ marker,
Nullable<int> limit,
bool detailed,
CancellationToken cancellationToken
) sealed
abstract ListQueuesAsync :
marker : QueueName *
limit : Nullable<int> *
detailed : bool *
cancellationToken : CancellationToken -> Task<ReadOnlyCollectionPage<CloudQueue>>
override ListQueuesAsync :
marker : QueueName *
limit : Nullable<int> *
detailed : bool *
cancellationToken : CancellationToken -> Task<ReadOnlyCollectionPage<CloudQueue>>
Parameters
- marker
- Type: net.openstack.Core.Domain.Queues.QueueName
The name of the last queue in the previous list. The resulting collection of queues will start with the first queue after this value, when sorted using Ordinal. If this value is null, the list starts at the beginning. - limit
- Type: System.Nullable<Int32>
The maximum number of queues to return. If this value is null, a provider-specific default value is used. - detailed
- Type: System.Boolean
true to return detailed information about each queue; otherwise, false. - cancellationToken
- Type: System.Threading.CancellationToken
The CancellationToken that the task will observe.
Return Value
Type:
Task<ReadOnlyCollectionPage<CloudQueue>>A
Task object representing the asynchronous operation. When the task completes successfully, the
Result property will contain placeholder.
Implements
IQueueingService.ListQueuesAsync(QueueName, Nullable<Int32>, Boolean, CancellationToken)
Exceptions
ExamplesThe following example demonstrates the use of this method using the CloudQueuesProvider
implementation of the IQueueingService. For more information about creating the provider, see
CloudQueuesProvider(CloudIdentity, String, Guid, Boolean, IIdentityProvider).
Note |
---|
The following code uses the async/await operators. For more information
about using these operators in your code, see Asynchronous Services.
|
IQueueingService queueingService = new CloudQueuesProvider(identity, region, clientId, internalUrl, identityProvider);
ReadOnlyCollectionPage<CloudQueue> queuesPage = await queueingService.ListQueuesAsync(null, null, true, CancellationToken.None);
ReadOnlyCollection<CloudQueue> queues = await queuesPage.GetAllPagesAsync(CancellationToken.None, null);
Dim queueingService As IQueueingService = New CloudQueuesProvider(identity, region, clientId, internalUrl, identityProvider)
Dim queuesPage = Await queueingService.ListQueuesAsync(Nothing, Nothing, True, CancellationToken.None)
Dim queues = Await queuesPage.GetAllPagesAsync(CancellationToken.None, Nothing)
No code example is currently available or this language may not be supported.
let queueingService = new CloudQueuesProvider(identity, region, clientId, internalUrl, identityProvider)
let! queuesPage = queueingService.ListQueuesAsync(null, Nullable(), true, CancellationToken.None) |> Async.AwaitTask
let! queues = queuesPage.GetAllPagesAsync(CancellationToken.None, null) |> Async.AwaitTask
The following code shows demonstrates the same example using the
Task Parallel Library
instead of the async/await operators.
IQueueingService queueingService = new CloudQueuesProvider(identity, region, clientId, internalUrl, identityProvider);
Task<ReadOnlyCollectionPage<CloudQueue>> queuesPageTask = queueingService.ListQueuesAsync(null, null, true, CancellationToken.None);
Task<ReadOnlyCollection<CloudQueue>> queuesTask =
queuesPageTask
.ContinueWith(task => task.Result.GetAllPagesAsync(CancellationToken.None, null))
.Unwrap();
Dim queueingService As IQueueingService = New CloudQueuesProvider(identity, region, clientId, internalUrl, identityProvider)
Dim queuesPageTask = queueingService.ListQueuesAsync(Nothing, Nothing, True, CancellationToken.None)
Dim queuesTask = queuesPageTask _
.ContinueWith(Function(task) task.Result.GetAllPagesAsync(CancellationToken.None, Nothing)) _
.Unwrap()
void ListQueues()
{
IQueueingService^ queueingService = gcnew CloudQueuesProvider(identity, region, clientId, internalUrl, identityProvider);
Task<ReadOnlyCollectionPage<CloudQueue^>^>^ queuesPageTask = queueingService->ListQueuesAsync(nullptr, Nullable<int>(), true, CancellationToken::None);
auto func = gcnew Func<Task<ReadOnlyCollectionPage<CloudQueue^>^>^, Task<ReadOnlyCollection<CloudQueue^>^>^>(GetAllPagesContinuationAsync<CloudQueue^>);
Task<ReadOnlyCollection<CloudQueue^>^>^ queuesTask = TaskExtensions::Unwrap(queuesPageTask->ContinueWith(func));
}
generic<class T>
static Task<ReadOnlyCollection<T>^>^ GetAllPagesContinuationAsync(Task<ReadOnlyCollectionPage<T>^>^ pageTask)
{
return ReadOnlyCollectionPageExtensions::GetAllPagesAsync(pageTask->Result, CancellationToken::None, static_cast<IProgress<ReadOnlyCollectionPage<T>^>^>(nullptr));
}
let queueingService = new CloudQueuesProvider(identity, region, clientId, internalUrl, identityProvider)
let queuesPageTask = queueingService.ListQueuesAsync(null, Nullable(), true, CancellationToken.None)
let queuesTask = queuesPageTask.ContinueWith(fun (task:Task<ReadOnlyCollectionPage<CloudQueue>>) -> task.Result.GetAllPagesAsync(CancellationToken.None, null)) |> TaskExtensions.Unwrap
Version Information.NET Framework
Supported in: 4.5
openstack.net
Supported in: 1.6, 1.5, 1.4, 1.3.6
See Also