vendor/se7enxweb/admin-ui/src/lib/Form/Data/Content/Draft/ContentEditData.php line 19

Open in your IDE?
  1. <?php
  2. /**
  3. * @copyright Copyright (C) Ibexa AS. All rights reserved.
  4. * @license For full copyright and license information view LICENSE file distributed with this source code.
  5. */
  6. declare(strict_types=1);
  7. namespace Ibexa\AdminUi\Form\Data\Content\Draft;
  8. use Ibexa\Contracts\Core\Repository\Values\Content\ContentInfo;
  9. use Ibexa\Contracts\Core\Repository\Values\Content\Language;
  10. use Ibexa\Contracts\Core\Repository\Values\Content\Location;
  11. use Ibexa\Contracts\Core\Repository\Values\Content\VersionInfo;
  12. /**
  13. * @todo Add validation. $language have to be validated that $versionInfo indeed has this language
  14. */
  15. class ContentEditData
  16. {
  17. /** @var \Ibexa\Contracts\Core\Repository\Values\Content\Location|null */
  18. protected $location;
  19. /** @var \Ibexa\Contracts\Core\Repository\Values\Content\ContentInfo|null */
  20. protected $contentInfo;
  21. /** @var \Ibexa\Contracts\Core\Repository\Values\Content\VersionInfo|null */
  22. protected $versionInfo;
  23. /** @var \Ibexa\Contracts\Core\Repository\Values\Content\Language|null */
  24. protected $language;
  25. /**
  26. * @param \Ibexa\Contracts\Core\Repository\Values\Content\ContentInfo|null $contentInfo
  27. * @param \Ibexa\Contracts\Core\Repository\Values\Content\VersionInfo|null $versionInfo
  28. * @param \Ibexa\Contracts\Core\Repository\Values\Content\Language|null $language
  29. * @param \Ibexa\Contracts\Core\Repository\Values\Content\Location|null $location
  30. */
  31. public function __construct(
  32. ?ContentInfo $contentInfo = null,
  33. ?VersionInfo $versionInfo = null,
  34. ?Language $language = null,
  35. ?Location $location = null
  36. ) {
  37. $this->contentInfo = $contentInfo;
  38. $this->versionInfo = $versionInfo;
  39. $this->language = $language;
  40. $this->location = $location;
  41. }
  42. /**
  43. * @return \Ibexa\Contracts\Core\Repository\Values\Content\Location|null
  44. */
  45. public function getLocation(): ?Location
  46. {
  47. return $this->location;
  48. }
  49. /**
  50. * @param \Ibexa\Contracts\Core\Repository\Values\Content\Location|null $location
  51. *
  52. * @return self
  53. */
  54. public function setLocation(Location $location): self
  55. {
  56. $this->location = $location;
  57. return $this;
  58. }
  59. /**
  60. * @return \Ibexa\Contracts\Core\Repository\Values\Content\ContentInfo|null
  61. */
  62. public function getContentInfo(): ?ContentInfo
  63. {
  64. return $this->contentInfo;
  65. }
  66. /**
  67. * @param \Ibexa\Contracts\Core\Repository\Values\Content\ContentInfo|null $contentInfo
  68. *
  69. * @return self
  70. */
  71. public function setContentInfo(?ContentInfo $contentInfo): self
  72. {
  73. $this->contentInfo = $contentInfo;
  74. return $this;
  75. }
  76. /**
  77. * @return \Ibexa\Contracts\Core\Repository\Values\Content\VersionInfo|null
  78. */
  79. public function getVersionInfo(): ?VersionInfo
  80. {
  81. return $this->versionInfo;
  82. }
  83. /**
  84. * @param \Ibexa\Contracts\Core\Repository\Values\Content\VersionInfo|null $versionInfo
  85. *
  86. * @return self
  87. */
  88. public function setVersionInfo(?VersionInfo $versionInfo): self
  89. {
  90. $this->versionInfo = $versionInfo;
  91. return $this;
  92. }
  93. /**
  94. * @return \Ibexa\Contracts\Core\Repository\Values\Content\Language|null
  95. */
  96. public function getLanguage(): ?Language
  97. {
  98. return $this->language;
  99. }
  100. /**
  101. * @param \Ibexa\Contracts\Core\Repository\Values\Content\Language|null $language
  102. *
  103. * @return self
  104. */
  105. public function setLanguage(?Language $language): self
  106. {
  107. $this->language = $language;
  108. return $this;
  109. }
  110. }
  111. class_alias(ContentEditData::class, 'EzSystems\EzPlatformAdminUi\Form\Data\Content\Draft\ContentEditData');