/
params.json
1 lines (1 loc) · 5.15 KB
/
params.json
1
{"name":"Solidfire-sdk-java","tagline":"Initial wrapping of the SolidFire Management API as a Java SDK","body":"# solidfire-sdk-java\r\nInitial wrapping of the SolidFire Management API as a Java SDK\r\n\r\n##Description\r\nThe 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 their Java programming language. The SolidFire Java SDK reduces the amount of additional coding time required for integration.\r\n\r\n##Compatibility\r\n| Component | Version |\r\n| ------------ | ----------------- |\r\n| Java | 7.0 & 8.0 |\r\n| SolidFire OS | Element 7.x & 8.x |\r\n\r\n##Getting Help\r\nContacting SolidFire SDK Support\r\nIf you have any questions or comments about this product, contact <sdk@solidfire.com> or reach out to the developer community at [developer.solidfire.com](http://developer.solidfire.com). Your feedback helps us focus our efforts on new features and capabilities.\r\n\r\n##Download\r\nDownload the latest JAR or grab via Maven:\r\n```xml\r\n<dependency>\r\n <groupId>com.solidfire</groupId>\r\n <artifactId>element-api</artifactId>\r\n <version>1.0.0.47</version>\r\n</dependency>\r\n```\r\n\r\nor SBT:\r\n```scala\r\nlibraryDependencies += \"com.solidfire\" % \"element-api\" % \"1.0.0.47\"\r\n```\r\n\r\nor Gradle:\r\n```groovy\r\ncompile 'com.solidfire:element-api:1.0.0.47'\r\n```\r\n\r\n##Assembly\r\n###Limitations with Certificate Signed Assembly Jar\r\n###\r\n\r\n##Documentation\r\n[JavaDoc](https://solidfire.github.io/solidfire-sdk-java/latest/api/)\r\n##Examples\r\n###Examples of using the API (Java)\r\n```java\r\nimport com.solidfire.javautil.Optional;\r\n\r\n// Import Optional common empty types (String, Long, & Map)\r\nimport static com.solidfire.javautil.Optional.*;\r\n\r\npublic class ReadmeJavaExample {\r\n public static void main(String[] args ) {\r\n // Create Connection to SF Cluster\r\n SolidFireElementIF sf = SolidFireElement.create(\"mvip\", \"8.0\", \"username\", \"password\");\r\n\r\n // Create some accounts\r\n AddAccountRequest addAccountRequest = new AddAccountRequest(\"username\", EMPTY_STRING, EMPTY_STRING, EMPTY_MAP);\r\n Long accountId = sf.addAccount(addAccountRequest).getAccountID();\r\n\r\n // And a volume with default QoS\r\n CreateVolumeRequest createVolumeRequest = new CreateVolumeRequest(\"volumeName\", accountId, 1000000000l, false, Optional.<QoS>empty(), EMPTY_MAP);\r\n Long volumeId = sf.createVolume(createVolumeRequest).getVolumeID();\r\n\r\n // Lookup iqn for new volume\r\n String iqn = sf.listVolumesForAccount(accountId, of(volumeId), of(1l)).getVolumes()[0].getIqn();\r\n\r\n // Change Min and Burst QoS while keeping Max and Burst Time the same\r\n QoS qos = new QoS(of(5000l), EMPTY_LONG, of(30000l), EMPTY_LONG );\r\n\r\n // Modify the volume size and QoS\r\n ModifyVolumeRequest modifyVolumeRequest = new ModifyVolumeRequest(volumeId, EMPTY_LONG, EMPTY_STRING, EMPTY_STRING, of(qos), of(2000000000l), EMPTY_MAP)\r\n sf.modifyVolume(modifyVolumeRequest);\r\n }\r\n}\r\n```\r\n\r\n###Examples of using the API (Scala)\r\n```scala \r\n// Import your Java Primitive Types\r\nimport java.lang.Long\r\n\r\nimport com.solidfire.javautil.Optional.{ empty , of }\r\n\r\nclass ReadmeExample {\r\n\r\n // Create Connection to SF Cluster\r\n val sf = SolidFireElement.create( \"mvip\", \"8.0\", \"username\", \"password\" )\r\n\r\n // Create some accounts\r\n val addAccount = new AddAccountRequest( \"username\", empty[String], empty[String], empty( ) )\r\n val accountId = sf.addAccount( addAccount ).getAccountID\r\n\r\n // And a volume\r\n val createVolume = new CreateVolumeRequest( \"volumeName\", accountId, 1000000000l, false, empty[QoS], empty( ) )\r\n val volumeId = sf.createVolume( createVolume ).getVolumeID\r\n\r\n // Lookup iqn for new volume\r\n val iqn: String = sf.listVolumesForAccount( accountId, of( volumeId ), of( 1l ) ).getVolumes( )( 0 ).getIqn\r\n\r\n // Change Min and Burst QoS while keeping Max and Burst Time the same\r\n val qos: QoS = new QoS( of( 5000l ), empty[Long], of( 30000l ), empty[Long] )\r\n\r\n // Modify the volume\r\n val modifyVolume = new ModifyVolumeRequest( volumeId, empty[Long], empty[String], empty[String], of( qos ), of( 2000000000l ), empty( ) )\r\n sf.modifyVolume( modifyVolume )\r\n}\r\n```\r\n##Roadmap\r\n##License\r\nCopyright © 2015 SolidFire, Inc. All rights reserved.\r\n\r\nLicensed under the Apache License, Version 2.0 (the \"License\");\r\nyou may not use this file except in compliance with the License.\r\nYou may obtain a copy of the License at\r\n\r\n <http://www.apache.org/licenses/LICENSE-2.0>\r\n\r\nUnless required by applicable law or agreed to in writing, software\r\ndistributed under the License is distributed on an \"AS IS\" BASIS,\r\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r\nSee the License for the specific language governing permissions andlimitations under the License.","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}