1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 package org.bitrepository.modify;
27
28 import org.bitrepository.client.conversation.mediator.ConversationMediatorManager;
29 import org.bitrepository.common.settings.Settings;
30 import org.bitrepository.modify.deletefile.ConversationBasedDeleteFileClient;
31 import org.bitrepository.modify.deletefile.DeleteFileClient;
32 import org.bitrepository.modify.putfile.ConversationBasedPutFileClient;
33 import org.bitrepository.modify.putfile.PutFileClient;
34 import org.bitrepository.modify.replacefile.ConversationBasedReplaceFileClient;
35 import org.bitrepository.modify.replacefile.ReplaceFileClient;
36 import org.bitrepository.protocol.ProtocolComponentFactory;
37 import org.bitrepository.protocol.security.SecurityManager;
38
39
40
41
42
43 public final class ModifyComponentFactory {
44
45 private static ModifyComponentFactory instance;
46
47
48
49
50
51
52 public static synchronized ModifyComponentFactory getInstance() {
53 if(instance == null) {
54 instance = new ModifyComponentFactory();
55 }
56 return instance;
57 }
58
59
60
61
62 private ModifyComponentFactory() {}
63
64
65
66
67
68 public PutFileClient retrievePutClient(Settings settings, SecurityManager securityManager, String clientID) {
69 return new ConversationBasedPutFileClient(
70 ProtocolComponentFactory.getInstance().getMessageBus(settings, securityManager),
71 ConversationMediatorManager.getConversationMediator(settings, securityManager),
72 settings, clientID);
73 }
74
75
76
77
78
79 public DeleteFileClient retrieveDeleteFileClient(Settings settings, SecurityManager securityManager, String clientID) {
80 return new ConversationBasedDeleteFileClient(
81 ProtocolComponentFactory.getInstance().getMessageBus(settings, securityManager),
82 ConversationMediatorManager.getConversationMediator(settings, securityManager),
83 settings, clientID);
84 }
85
86
87
88
89
90 public ReplaceFileClient retrieveReplaceFileClient(Settings settings, SecurityManager securityManager, String clientID) {
91 return new ConversationBasedReplaceFileClient(
92 ProtocolComponentFactory.getInstance().getMessageBus(settings, securityManager),
93 ConversationMediatorManager.getConversationMediator(settings, securityManager),
94 settings, clientID);
95 }
96 }