GameSystem.cs 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. using System.Runtime.Serialization;
  2. using MediaBrowser.Controller.Providers;
  3. using MediaBrowser.Model.Configuration;
  4. using System;
  5. using MediaBrowser.Model.Users;
  6. namespace MediaBrowser.Controller.Entities
  7. {
  8. /// <summary>
  9. /// Class GameSystem
  10. /// </summary>
  11. public class GameSystem : Folder, IHasLookupInfo<GameSystemInfo>
  12. {
  13. /// <summary>
  14. /// Return the id that should be used to key display prefs for this item.
  15. /// Default is based on the type for everything except actual generic folders.
  16. /// </summary>
  17. /// <value>The display prefs id.</value>
  18. [IgnoreDataMember]
  19. public override Guid DisplayPreferencesId
  20. {
  21. get
  22. {
  23. return Id;
  24. }
  25. }
  26. /// <summary>
  27. /// Gets or sets the game system.
  28. /// </summary>
  29. /// <value>The game system.</value>
  30. public string GameSystemName { get; set; }
  31. /// <summary>
  32. /// Gets the user data key.
  33. /// </summary>
  34. /// <returns>System.String.</returns>
  35. protected override string CreateUserDataKey()
  36. {
  37. if (!string.IsNullOrEmpty(GameSystemName))
  38. {
  39. return "GameSystem-" + GameSystemName;
  40. }
  41. return base.CreateUserDataKey();
  42. }
  43. protected override bool GetBlockUnratedValue(UserPolicy config)
  44. {
  45. // Don't block. Determine by game
  46. return false;
  47. }
  48. public override UnratedItem GetBlockUnratedType()
  49. {
  50. return UnratedItem.Game;
  51. }
  52. public GameSystemInfo GetLookupInfo()
  53. {
  54. var id = GetItemLookupInfo<GameSystemInfo>();
  55. id.Path = Path;
  56. return id;
  57. }
  58. [IgnoreDataMember]
  59. public override bool SupportsPeople
  60. {
  61. get
  62. {
  63. return false;
  64. }
  65. }
  66. }
  67. }