1
0

ICloudFederationShare.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231
  1. <?php
  2. /**
  3. * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors
  4. * SPDX-License-Identifier: AGPL-3.0-or-later
  5. */
  6. namespace OCP\Federation;
  7. /**
  8. * Interface ICloudFederationShare
  9. *
  10. *
  11. * @since 14.0.0
  12. */
  13. interface ICloudFederationShare {
  14. /**
  15. * set uid of the recipient
  16. *
  17. * @param string $user
  18. *
  19. * @since 14.0.0
  20. */
  21. public function setShareWith($user);
  22. /**
  23. * set resource name (e.g. file, calendar, contact,...)
  24. *
  25. * @param string $name
  26. *
  27. * @since 14.0.0
  28. */
  29. public function setResourceName($name);
  30. /**
  31. * set resource type (e.g. file, calendar, contact,...)
  32. *
  33. * @param string $resourceType
  34. *
  35. * @since 14.0.0
  36. */
  37. public function setResourceType($resourceType);
  38. /**
  39. * set resource description (optional)
  40. *
  41. * @param string $description
  42. *
  43. * @since 14.0.0
  44. */
  45. public function setDescription($description);
  46. /**
  47. * set provider ID (e.g. file ID)
  48. *
  49. * @param string $providerId
  50. *
  51. * @since 14.0.0
  52. */
  53. public function setProviderId($providerId);
  54. /**
  55. * set owner UID
  56. *
  57. * @param string $owner
  58. *
  59. * @since 14.0.0
  60. */
  61. public function setOwner($owner);
  62. /**
  63. * set owner display name
  64. *
  65. * @param string $ownerDisplayName
  66. *
  67. * @since 14.0.0
  68. */
  69. public function setOwnerDisplayName($ownerDisplayName);
  70. /**
  71. * set UID of the user who sends the share
  72. *
  73. * @param string $sharedBy
  74. *
  75. * @since 14.0.0
  76. */
  77. public function setSharedBy($sharedBy);
  78. /**
  79. * set display name of the user who sends the share
  80. *
  81. * @param $sharedByDisplayName
  82. *
  83. * @since 14.0.0
  84. */
  85. public function setSharedByDisplayName($sharedByDisplayName);
  86. /**
  87. * set protocol specification
  88. *
  89. * @param array $protocol
  90. *
  91. * @since 14.0.0
  92. */
  93. public function setProtocol(array $protocol);
  94. /**
  95. * share type (group or user)
  96. *
  97. * @param string $shareType
  98. *
  99. * @since 14.0.0
  100. */
  101. public function setShareType($shareType);
  102. /**
  103. * get the whole share, ready to send out
  104. *
  105. * @return array
  106. *
  107. * @since 14.0.0
  108. */
  109. public function getShare();
  110. /**
  111. * get uid of the recipient
  112. *
  113. * @return string
  114. *
  115. * @since 14.0.0
  116. */
  117. public function getShareWith();
  118. /**
  119. * get resource name (e.g. file, calendar, contact,...)
  120. *
  121. * @return string
  122. *
  123. * @since 14.0.0
  124. */
  125. public function getResourceName();
  126. /**
  127. * get resource type (e.g. file, calendar, contact,...)
  128. *
  129. * @return string
  130. *
  131. * @since 14.0.0
  132. */
  133. public function getResourceType();
  134. /**
  135. * get resource description (optional)
  136. *
  137. * @return string
  138. *
  139. * @since 14.0.0
  140. */
  141. public function getDescription();
  142. /**
  143. * get provider ID (e.g. file ID)
  144. *
  145. * @return string
  146. *
  147. * @since 14.0.0
  148. */
  149. public function getProviderId();
  150. /**
  151. * get owner UID
  152. *
  153. * @return string
  154. *
  155. * @since 14.0.0
  156. */
  157. public function getOwner();
  158. /**
  159. * get owner display name
  160. *
  161. * @return string
  162. *
  163. * @since 14.0.0
  164. */
  165. public function getOwnerDisplayName();
  166. /**
  167. * get UID of the user who sends the share
  168. *
  169. * @return string
  170. *
  171. * @since 14.0.0
  172. */
  173. public function getSharedBy();
  174. /**
  175. * get display name of the user who sends the share
  176. *
  177. * @return string
  178. *
  179. * @since 14.0.0
  180. */
  181. public function getSharedByDisplayName();
  182. /**
  183. * get share type (group or user)
  184. *
  185. * @return string
  186. *
  187. * @since 14.0.0
  188. */
  189. public function getShareType();
  190. /**
  191. * get share Secret
  192. *
  193. * @return string
  194. *
  195. * @since 14.0.0
  196. */
  197. public function getShareSecret();
  198. /**
  199. * get protocol specification
  200. *
  201. * @return array
  202. *
  203. * @since 14.0.0
  204. */
  205. public function getProtocol();
  206. }