1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- /*
- * Copyright (C) Alibaba Cloud Computing
- * All rights reserved.
- *
- * 版权所有 (C)阿里云计算有限公司
- */
- using System;
- using System.Collections.Generic;
- using System.Globalization;
- using Aliyun.OSS.Common.Communication;
- using Aliyun.OSS.Transform;
- using Aliyun.OSS.Util;
- namespace Aliyun.OSS.Commands
- {
- internal class ListBucketsCommand : OssCommand<ListBucketsResult>
- {
- private readonly ListBucketsRequest _request;
- protected override IDictionary<string, string> Parameters
- {
- get
- {
- var parameters = base.Parameters;
- if (_request != null)
- Populate(_request, parameters);
- return parameters;
- }
- }
- private static void Populate(ListBucketsRequest request, IDictionary<string, string> parameters)
- {
- if (request.Prefix != null)
- {
- parameters[RequestParameters.PREFIX] = request.Prefix;
- }
- if (request.Marker != null)
- {
- parameters[RequestParameters.MARKER] = request.Marker;
- }
- if (request.MaxKeys.HasValue)
- {
- parameters[RequestParameters.MAX_KEYS] = request.MaxKeys.Value.ToString(CultureInfo.InvariantCulture);
- }
- }
- private ListBucketsCommand(IServiceClient client, Uri endpoint, ExecutionContext context,
- IDeserializer<ServiceResponse, ListBucketsResult> deserializeMethod,
- ListBucketsRequest request)
- : base(client, endpoint, context, deserializeMethod)
- {
- _request = request;
- }
-
- public static ListBucketsCommand Create(IServiceClient client, Uri endpoint, ExecutionContext context,
- ListBucketsRequest request)
- {
- return new ListBucketsCommand(client, endpoint, context,
- DeserializerFactory.GetFactory().CreateListBucketResultDeserializer(), request);
- }
- }
- }
|