Completed
Push — master ( 9373da...430223 )
by Maxence
03:17 queued 12s
created

EventService::localShareCreated()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 2
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
declare(strict_types=1);
4
5
6
/**
7
 * Circles - Bring cloud-users closer together.
8
 *
9
 * This file is licensed under the Affero General Public License version 3 or
10
 * later. See the COPYING file.
11
 *
12
 * @author Maxence Lange <[email protected]>
13
 * @author Vinicius Cubas Brand <[email protected]>
14
 * @author Daniel Tygel <[email protected]>
15
 *
16
 * @copyright 2017
17
 * @license GNU AGPL version 3 or any later version
18
 *
19
 * This program is free software: you can redistribute it and/or modify
20
 * it under the terms of the GNU Affero General Public License as
21
 * published by the Free Software Foundation, either version 3 of the
22
 * License, or (at your option) any later version.
23
 *
24
 * This program is distributed in the hope that it will be useful,
25
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
26
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27
 * GNU Affero General Public License for more details.
28
 *
29
 * You should have received a copy of the GNU Affero General Public License
30
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
31
 *
32
 */
33
34
35
namespace OCA\Circles\Service;
36
37
38
use daita\MySmallPhpTools\Model\SimpleDataStore;
39
use OCA\Circles\Events\AddingCircleMemberEvent;
40
use OCA\Circles\Events\CircleCreatedEvent;
41
use OCA\Circles\Events\CircleDestroyedEvent;
42
use OCA\Circles\Events\CircleGenericEvent;
43
use OCA\Circles\Events\CircleMemberAddedEvent;
44
use OCA\Circles\Events\CircleMemberEditedEvent;
45
use OCA\Circles\Events\CircleMemberRemovedEvent;
46
use OCA\Circles\Events\CreatingCircleEvent;
47
use OCA\Circles\Events\DestroyingCircleEvent;
48
use OCA\Circles\Events\EditingCircleMemberEvent;
49
use OCA\Circles\Events\MembershipsCreatedEvent;
50
use OCA\Circles\Events\MembershipsRemovedEvent;
51
use OCA\Circles\Events\RemovingCircleMemberEvent;
52
use OCA\Circles\Model\Federated\FederatedEvent;
53
use OCA\Circles\Model\Member;
54
use OCA\Circles\Model\Membership;
55
use OCA\Circles\Model\Mount;
56
use OCA\Circles\Model\ShareWrapper;
57
use OCP\EventDispatcher\IEventDispatcher;
58
59
60
/**
61
 * Class EventService
62
 *
63
 * @package OCA\Circles\Service
64
 */
65
class EventService {
66
67
68
	/** @var IEventDispatcher */
69
	private $eventDispatcher;
70
71
72
	/**
73
	 * EventService constructor.
74
	 *
75
	 * @param IEventDispatcher $eventDispatcher
76
	 */
77
	public function __construct(IEventDispatcher $eventDispatcher) {
78
		$this->eventDispatcher = $eventDispatcher;
79
	}
80
81
82
	/**
83
	 * onCircleCreation()
84
	 *
85
	 * Called when a circle is created.
86
	 * Broadcast an activity to the cloud
87
	 * We won't do anything if the circle is not PUBLIC or CLOSED
88
	 *
89
	 * @param FederatedEvent $federatedEvent
90
	 */
91
	public function circleCreating(FederatedEvent $federatedEvent): void {
92
		$event = new CreatingCircleEvent($federatedEvent);
93
		$this->eventDispatcher->dispatchTyped($event);
94
	}
95
96
	/**
97
	 * @param FederatedEvent $federatedEvent
98
	 * @param array $results
99
	 */
100
	public function circleCreated(FederatedEvent $federatedEvent, array $results): void {
101
		$event = new CircleCreatedEvent($federatedEvent, $results);
102
		$this->eventDispatcher->dispatchTyped($event);
103
	}
104
105
106
	/**
107
	 * @param FederatedEvent $federatedEvent
108
	 */
109
	public function circleDestroying(FederatedEvent $federatedEvent): void {
110
		$event = new DestroyingCircleEvent($federatedEvent);
111
		$this->eventDispatcher->dispatchTyped($event);
112
	}
113
114
	/**
115
	 * @param FederatedEvent $federatedEvent
116
	 * @param array $results
117
	 */
118
	public function circleDestroyed(FederatedEvent $federatedEvent, array $results): void {
119
		$event = new CircleDestroyedEvent($federatedEvent, $results);
120
		$this->eventDispatcher->dispatchTyped($event);
121
	}
122
123
124
	/**
125
	 * @param FederatedEvent $federatedEvent
126
	 */
127
	public function singleMemberAdding(FederatedEvent $federatedEvent): void {
128
		$event = new AddingCircleMemberEvent($federatedEvent);
129
		$event->setType(CircleGenericEvent::INVITED);
130
		$this->eventDispatcher->dispatchTyped($event);
131
	}
132
133
	/**
134
	 * @param FederatedEvent $federatedEvent
135
	 * @param array $results
136
	 */
137
	public function singleMemberAdded(FederatedEvent $federatedEvent, array $results): void {
138
		$event = new CircleMemberAddedEvent($federatedEvent, $results);
139
		$event->setType(CircleGenericEvent::INVITED);
140
		$this->eventDispatcher->dispatchTyped($event);
141
	}
142
143
144
	/**
145
	 * @param FederatedEvent $federatedEvent
146
	 */
147
	public function multipleMemberAdding(FederatedEvent $federatedEvent): void {
148
		$event = new AddingCircleMemberEvent($federatedEvent);
149
		$event->setType(CircleGenericEvent::MULTIPLE);
150
		$this->eventDispatcher->dispatchTyped($event);
151
	}
152
153
	/**
154
	 * @param FederatedEvent $federatedEvent
155
	 * @param array $results
156
	 */
157
	public function multipleMemberAdded(FederatedEvent $federatedEvent, array $results): void {
158
		$event = new CircleMemberAddedEvent($federatedEvent, $results);
159
		$event->setType(CircleGenericEvent::MULTIPLE);
160
		$this->eventDispatcher->dispatchTyped($event);
161
	}
162
163
164
	public function memberInvited(Member $member): void {
0 ignored issues
show
Unused Code introduced by
The parameter $member is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
165
	}
166
167
168
	public function memberRequest(Member $member): void {
0 ignored issues
show
Unused Code introduced by
The parameter $member is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
169
	}
170
171
172
	/**
173
	 * @param FederatedEvent $federatedEvent
174
	 */
175
	public function memberJoining(FederatedEvent $federatedEvent): void {
176
		$event = new AddingCircleMemberEvent($federatedEvent);
177
		$event->setType(CircleGenericEvent::JOINED);
178
		$this->eventDispatcher->dispatchTyped($event);
179
	}
180
181
	/**
182
	 * @param FederatedEvent $federatedEvent
183
	 * @param array $results
184
	 */
185
	public function memberJoined(FederatedEvent $federatedEvent, array $results): void {
186
		$event = new CircleMemberAddedEvent($federatedEvent, $results);
187
		$event->setType(CircleGenericEvent::JOINED);
188
		$this->eventDispatcher->dispatchTyped($event);
189
	}
190
191
192
	/**
193
	 * @param FederatedEvent $federatedEvent
194
	 */
195
	public function memberEditing(FederatedEvent $federatedEvent): void {
196
		$event = new EditingCircleMemberEvent($federatedEvent);
197
		$event->setType(CircleGenericEvent::LEVEL);
198
		$this->eventDispatcher->dispatchTyped($event);
199
	}
200
201
	/**
202
	 * @param FederatedEvent $federatedEvent
203
	 * @param array $results
204
	 */
205
	public function memberEdited(FederatedEvent $federatedEvent, array $results): void {
206
		$event = new CircleMemberEditedEvent($federatedEvent, $results);
207
		$event->setType(CircleGenericEvent::LEVEL);
208
		$this->eventDispatcher->dispatchTyped($event);
209
	}
210
211
212
	/**
213
	 * @param FederatedEvent $federatedEvent
214
	 */
215
	public function memberRemoving(FederatedEvent $federatedEvent): void {
216
		$event = new RemovingCircleMemberEvent($federatedEvent);
217
		$event->setType(CircleGenericEvent::REMOVED);
218
		$this->eventDispatcher->dispatchTyped($event);
219
	}
220
221
	/**
222
	 * @param FederatedEvent $federatedEvent
223
	 * @param array $results
224
	 */
225
	public function memberRemoved(FederatedEvent $federatedEvent, array $results): void {
226
		$event = new CircleMemberRemovedEvent($federatedEvent, $results);
227
		$event->setType(CircleGenericEvent::REMOVED);
228
		$this->eventDispatcher->dispatchTyped($event);
229
	}
230
231
232
	/**
233
	 * @param FederatedEvent $federatedEvent
234
	 */
235
	public function memberLeaving(FederatedEvent $federatedEvent): void {
236
		$event = new RemovingCircleMemberEvent($federatedEvent);
237
		$event->setType(CircleGenericEvent::LEFT);
238
		$this->eventDispatcher->dispatchTyped($event);
239
	}
240
241
	/**
242
	 * @param FederatedEvent $federatedEvent
243
	 * @param SimpleDataStore[] $results
244
	 */
245
	public function memberLeft(FederatedEvent $federatedEvent, array $results): void {
246
		$event = new CircleMemberRemovedEvent($federatedEvent, $results);
247
		$event->setType(CircleGenericEvent::LEFT);
248
		$this->eventDispatcher->dispatchTyped($event);
249
	}
250
251
252
	/**
253
	 * @param Membership[] $new
254
	 */
255
	public function membershipsCreated(array $new): void {
256
		$event = new MembershipsCreatedEvent($new);
257
		$this->eventDispatcher->dispatchTyped($event);
258
	}
259
260
261
	/**
262
	 * @param Membership[] $deprecated
263
	 */
264
	public function membershipsRemoved(array $deprecated): void {
265
		$event = new MembershipsRemovedEvent($deprecated);
266
		$this->eventDispatcher->dispatchTyped($event);
267
	}
268
269
270
	/**
271
	 * @param ShareWrapper $wrappedShare
272
	 */
273
	public function localShareCreated(ShareWrapper $wrappedShare): void {
0 ignored issues
show
Unused Code introduced by
The parameter $wrappedShare is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
274
	}
275
276
	/**
277
	 * @param ShareWrapper $wrappedShare
278
	 */
279
	public function federatedShareCreated(ShareWrapper $wrappedShare, Mount $mount): void {
0 ignored issues
show
Unused Code introduced by
The parameter $wrappedShare is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
Unused Code introduced by
The parameter $mount is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
280
//		Circles::shareToCircle(
281
//			$circle->getUniqueId(), 'files', '',
282
//			['id' => $share->getId(), 'share' => $this->shareObjectToArray($share)],
283
//			'\OCA\Circles\Circles\FileSharingBroadcaster'
284
//		);
285
	}
286
287
288
	/**
289
	 * @param ShareWrapper $wrappedShare
290
	 */
291
	public function localShareDeleted(ShareWrapper $wrappedShare): void {
0 ignored issues
show
Unused Code introduced by
The parameter $wrappedShare is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
292
	}
293
294
	/**
295
	 * @param ShareWrapper $wrappedShare
296
	 */
297
	public function federatedShareDeleted(ShareWrapper $wrappedShare): void {
0 ignored issues
show
Unused Code introduced by
The parameter $wrappedShare is not used and could be removed.

This check looks from parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
298
	}
299
300
301
302
//	/**
303
//	 * @param FederatedEvent $federatedEvent
304
//	 */
305
//	public function onSharedItemsSyncRequested(FederatedEvent $federatedEvent) {
306
//		$event = new SharedItemsSyncRequestedEvent($federatedEvent);
307
//		$this->eventDispatcher->dispatchTyped($event);
308
//	}
309
310
}
311
312