26
26
import java .util .List ;
27
27
import java .util .Stack ;
28
28
import javax .ws .rs .core .Response ;
29
- import java .util .Map ;
30
- import java .util .HashMap ;
31
29
32
30
import io .minio .CopyObjectArgs ;
33
31
import io .minio .CopySource ;
48
46
* S3(Minio) default client
49
47
*/
50
48
public enum Client {
51
- DEFAULT (SubmarineConfiguration .getInstance ().getString (SubmarineConfVars .ConfVars .SUBMARINE_S3_ENDPOINT )),
52
- CUSTOMER ("http://localhost:9000" );
49
+ INSTANCE (SubmarineConfiguration .getInstance ().getString (SubmarineConfVars .ConfVars .SUBMARINE_S3_ENDPOINT ));
53
50
54
51
/* submarine config */
55
52
private final SubmarineConfiguration conf = SubmarineConfiguration .getInstance ();
56
53
57
54
/* minio client */
58
55
private final MinioClient minioClient ;
59
56
60
- public static Map <String , Client > clientFactory = new HashMap <String , Client >();
61
- private final String endpoint ;
62
-
63
- static {
64
- for (Client clientSingleton : Client .values ()) {
65
- clientFactory .put (clientSingleton .endpoint , clientSingleton );
66
- }
67
- }
68
-
69
57
Client (String endpoint ) {
70
- this .endpoint = endpoint ;
71
58
this .minioClient = MinioClient .builder ()
72
59
.endpoint (endpoint )
73
60
.credentials (
@@ -76,28 +63,8 @@ public enum Client {
76
63
).build ();
77
64
}
78
65
79
- Client () {
80
- this .endpoint = conf .getString (SubmarineConfVars .ConfVars .SUBMARINE_S3_ENDPOINT );
81
- this .minioClient = MinioClient .builder ()
82
- .endpoint (conf .getString (SubmarineConfVars .ConfVars .SUBMARINE_S3_ENDPOINT ))
83
- .credentials (
84
- conf .getString (SubmarineConfVars .ConfVars .SUBMARINE_S3_ACCESS_KEY_ID ),
85
- conf .getString (SubmarineConfVars .ConfVars .SUBMARINE_S3_SECRET_ACCESS_KEY )
86
- ).build ();
87
- }
88
-
89
66
public static Client getInstance () {
90
- return clientFactory .get (SubmarineConfiguration .getInstance ()
91
- .getString (SubmarineConfVars .ConfVars .SUBMARINE_S3_ENDPOINT ));
92
- }
93
-
94
- public static Client getInstance (String endpoint ) {
95
- try {
96
- return clientFactory .get (endpoint );
97
- } catch (Exception e ) {
98
- throw new SubmarineRuntimeException (Response .Status .INTERNAL_SERVER_ERROR .getStatusCode (),
99
- e .getMessage ());
100
- }
67
+ return INSTANCE ;
101
68
}
102
69
103
70
/**
0 commit comments