Owner.cs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. /*
  2. * Copyright (C) Alibaba Cloud Computing
  3. * All rights reserved.
  4. *
  5. * 版权所有 (C)阿里云计算有限公司
  6. */
  7. using System;
  8. using System.Globalization;
  9. using System.Xml.Serialization;
  10. namespace Aliyun.OSS
  11. {
  12. /// <summary>
  13. /// 表示OSS实体的所有者。
  14. /// </summary>
  15. [XmlRoot("Owner")]
  16. public class Owner : ICloneable
  17. {
  18. /// <summary>
  19. /// 获取或设置所有者的ID。
  20. /// </summary>
  21. [XmlElement("ID")]
  22. public string Id { get; set; }
  23. /// <summary>
  24. /// 获取或设置所有者的显示名称。
  25. /// </summary>
  26. [XmlElement("DisplayName")]
  27. public string DisplayName { get; set; }
  28. /// <summary>
  29. /// 构造一个新的<see cref="Owner" />实例。
  30. /// </summary>
  31. internal Owner()
  32. { }
  33. /// <summary>
  34. /// 使用给定的所有者ID和显示名称构造一个新的<see cref="Owner" />实例。
  35. /// </summary>
  36. /// <param name="id">所有者的ID。</param>
  37. /// <param name="displayName">所有者的显示名称。</param>
  38. internal Owner(string id, string displayName)
  39. {
  40. Id = id;
  41. DisplayName = displayName;
  42. }
  43. /// <summary>
  44. /// <see cref="Owner"/>的字符串表示形式
  45. /// </summary>
  46. /// <returns><see cref="Owner"/>的字符串表示形式</returns>
  47. public override string ToString()
  48. {
  49. return string.Format(CultureInfo.InvariantCulture,
  50. "[Owner Id={0}, DisplayName={1}]",
  51. Id ?? string.Empty,
  52. DisplayName ?? string.Empty);
  53. }
  54. /// <summary>
  55. /// 克隆一个<see cref="Owner"/>
  56. /// </summary>
  57. /// <returns>新的<see cref="Owner"/>对象</returns>
  58. public object Clone()
  59. {
  60. return new Owner(Id, DisplayName);
  61. }
  62. }
  63. }