You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The SolidFire Java SDK is a collection of software modules and libraries that facilitate integration and orchestration between proprietary systems and third-party applications. The Java SDK allows developers to deeply integrate SolidFire system API with the Java programming language. The SolidFire Java SDK reduces the amount of additional coding time required for integration.
12
10
13
-
## Compatibility
14
-
15
-
| Component | Version |
16
-
| ------------ | ------------------- |
17
-
| Java | 7.0 & 8.0 |
18
-
| SolidFire OS | Element 7.0 - 8.4\*|
19
-
20
-
\*<sub><sup>_**Note**: This version of the SDK will work with versions of Element OS greater then 8.4 but some features will not be supported in the API._</sup></sub>
21
-
22
-
## Getting Help
23
-
24
-
Contacting SolidFire SDK Support
25
-
If you have any questions or comments about this product, contact <ng-sf-host-integrations-sdk@netapp.com> or reach out to the developer community at [ThePub](http://netapp.io). Your feedback helps us focus our efforts on new features and capabilities.
26
-
27
-
## Download
11
+
## Installation
28
12
29
13
[Download](http://mvnrepository.com/artifact/com.solidfire) the latest JAR or grab via Maven:
The SolidFire Java SDK is also released as a Signed Assembly containing everything you need to quickly spin up a working client to interact with you SolidFire cluster. The assembly can be downloaded [here](https://github.com/solidfire/solidfire-sdk-java/releases/download/v1.1.0.85/solidfire-sdk-assembly-1.1.0.85.jar).
40
+
The SolidFire Java SDK is also released as a Signed Assembly containing everything you need to quickly spin up a working client to interact with you SolidFire cluster. The assembly can be downloaded [here](https://github.com/solidfire/solidfire-sdk-java/releases/download/v1.2/solidfire-sdk-assembly-1.2.0.172.jar).
60
41
61
42
___Dependencies___:
62
43
63
44
| Component | Version |
64
45
| ------------------- | ------- |
65
-
| jsvcgen-client-java | 0.3.0 |
66
46
| base64 | 2.3.9 |
67
-
| gson| 2.6.2 |
47
+
|solidfire.code.gson | 2.6.2 |
68
48
| joda-time | 2.9.3 |
69
49
| joda-convert | 1.8.1 |
70
50
| slf4j-api | 1.6.6 |
71
51
72
-
_**Note**: The SDK assembly should only be used in a standalone setting such as scripting or for prototyping. It should not be used in a production environment as the signed components might conflict with other components that are unsigned or signed with another certificate. See below._
73
52
74
53
### Limitations with a Certificate Signed Assembly Jar
75
54
76
55
The SDK assembly is signed with a certificate controlled by SolidFire, Inc, assuring the archive is official and legitimate. One caveat to having a set of components also signed with SolidFire's certificate, is no other version of these components can exist on the classpath. This will cause a security exception in the JVM.
77
56
78
57
If using the SDK with a restricted version of the above listed components, e.g. logback, or in developing an enterprise solution that runs in a web application container, etc., use the publicly [hosted versions](http://mvnrepository.com/artifact/com.solidfire) of the SDK.
If you have any questions or comments about this product, open an issue on our [GitHub repo](https://github.com/solidfire/solidfire-sdk-java) or reach out to the online developer community at [ThePub](http://netapp.io). Your feedback helps us focus our efforts on new features and capabilities.
88
75
89
76
## Examples
90
77
91
-
Step 1 - Build a [SolidFireElement](https://solidfire.github.io/solidfire-sdk-java/doc/v1.1/com/solidfire/element/api/SolidFireElement.html) object using the factory
92
-
---
93
-
This is the preferred way to construct the [SolidFireElement](https://solidfire.github.io/solidfire-sdk-java/doc/v1.1/com/solidfire/element/api/SolidFireElement.html) object. The factory will make a call to the SolidFire cluster using the credentials supplied to test the connection. It will also set the version to communicate with based on the highest number supported by the
94
-
SDK and Element OS. Optionally, you can choose to set the version manually and whether or not to verify SSL. Read more about it in the [ElementFactory](https://solidfire.github.io/solidfire-sdk-java/doc/v1.1/com/solidfire/client/ElementFactory.html) documentation.
78
+
#### Step 1 - Build a SolidFireElement object using the factory
79
+
80
+
This is the preferred way to construct the SolidFireElement object. The factory will make a call to the SolidFire cluster using the credentials supplied to test the connection. It will also set the version to communicate with based on the highest number supported by the
81
+
SDK and Element OS. Optionally, you can choose to set the version manually and whether or not to verify SSL. Read more about it in the ElementFactory documentation.
95
82
96
83
#### Java:
97
84
98
85
~~~java
99
-
100
86
importcom.solidfire.client.ElementFactory;
101
87
importcom.solidfire.element.api.*;
102
-
importcom.solidfire.jsvcgen.javautil.Optional;
88
+
importcom.solidfire.core.javautil.Optional;
103
89
104
90
// Import Optional common empty types (String, Long, & Map)
## Step 2 - Call the API method and retrieve the result
112
+
####Step 2 - Call the API method and retrieve the result
128
113
129
114
All service methods in SolidFireElement call API endpoints and they all return result objects. The naming convention is <i>[methodName]Result</i>. For example, <i>listAccounts()</i> returns a <i>ListAccountsResult</i> object which has a property called <i>getAccounts()</i> returns an array of <i>Accounts</i> that can be iterated.
130
115
@@ -134,7 +119,6 @@ from the <i>AddAccountResult</i> object.
134
119
#### Java:
135
120
136
121
~~~java
137
-
138
122
// Send the request and wait for the result then pull the Account
@@ -267,7 +248,6 @@ Connection timeout (useful for failing fast when a host becomes unreachable):
267
248
#### Java:
268
249
269
250
~~~java
270
-
271
251
importcom.solidfire.client.ElementFactory;
272
252
importcom.solidfire.element.api.*;
273
253
...
@@ -281,7 +261,6 @@ Read timeout (useful for extending time for a service call to return):
281
261
#### Java:
282
262
283
263
~~~java
284
-
285
264
importcom.solidfire.client.ElementFactory;
286
265
importcom.solidfire.element.api.*;
287
266
...
@@ -290,10 +269,6 @@ Read timeout (useful for extending time for a service call to return):
290
269
291
270
~~~
292
271
293
-
## More Examples
294
-
295
-
More specific examples are available [here](examples/examples.md)
296
-
297
272
## Logging and Logback
298
273
299
274
The SDK and the Assembly leverage the [SLF4J API](http://www.slf4j.org/) for logging with the assembly also including [logback-classic](http://logback.qos.ch/reasonsToSwitch.html) implementation. An advantage to using the SLF4J interface is the availability of legacy logging framework [bridges](http://www.slf4j.org/legacy.html), for intercepting and consolidating all logging calls into a single log.
@@ -303,7 +278,6 @@ The SDK and the Assembly leverage the [SLF4J API](http://www.slf4j.org/) for log
<spanclass="site-footer-owner"><ahref="https://github.com/solidfire/solidfire-sdk-java">solidfire-sdk-java</a> is maintained by <ahref="http://netapp.com">NetApp, Inc.</a>.</span>
0 commit comments