public class BinderTemplateRequest extends VaultRequest
HTTP_HEADER_AUTHORIZATION, HTTP_HEADER_VAULT_CLIENT_ID, vaultClient
getBaseObjectMapper, send, send, sendReturnBinary, sendReturnBinary, sendToFile, sendToFile, setVaultClient
public BinderTemplateMetadataResponse retrieveBinderTemplateMetadata()
Retrieve the metadata which defines the shape of binder templates in your vault.
GET /api/{version}/metadata/objects/binders/templates
BinderTemplateMetadataResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .retrieveBinderTemplateMetadata();
for (Template data : response.getData()) { System.out.println("\n**** Data Item **** "); System.out.println("Name = " + data.getName()); System.out.println("Type = " + data.getType()); System.out.println("Requiredness = " + data.getRequiredness()); System.out.println("Editable = " + data.getEditable()); System.out.println("Multi Value = " + data.getMultiValue()); System.out.println("Component = " + data.getComponent()); System.out.println("Ordered = " + data.getOrdered()); }
public BinderTemplateMetadataResponse retrieveBinderTemplateNodeMetadata()
Retrieve the metadata which defines the shape of binder template nodes in your vault.
GET /api/{version}/metadata/objects/binders/templates/bindernodes
BinderTemplateMetadataResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .retrieveBinderTemplateNodeMetadata();
for (Template data : response.getData()) { System.out.println("\n**** Data Item **** "); System.out.println("Name = " + data.getName()); System.out.println("Type = " + data.getType()); System.out.println("Requiredness = " + data.getRequiredness()); System.out.println("Editable = " + data.getEditable()); System.out.println("Multi Value = " + data.getMultiValue()); System.out.println("Enums = " + data.getEnums()); System.out.println("Component = " + data.getComponent()); System.out.println("Max Value = " + data.getMaxValue()); System.out.println("Min Value = " + data.getMinValue()); System.out.println("Scale = " + data.getScale()); }
public BinderTemplateResponse retrieveBinderTemplateCollection()
Retrieve the collection of all binder templates in your vault.
GET /api/{version}/objects/binders/templates
BinderTemplateResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .retrieveBinderTemplateCollection();
for (BinderTemplate data : response.getData()) { System.out.println("\n**** Data Item **** "); System.out.println("Name = " + data.getName()); System.out.println("Label = " + data.getLabel()); System.out.println("Active = " + data.getActive()); System.out.println("Type = " + data.getType()); System.out.println("Subtype = " + data.getSubType()); System.out.println("Classification = " + data.getClassification()); System.out.println("Filing Model = " + data.getFilingModel()); }
public BinderTemplateResponse retrieveBinderTemplateAttributes(String templateName)
Retrieve the attributes of a specific binder template in your vault.
templateName
- The binder template name__v field value.GET /api/{version}/objects/binders/templates/{template_name}
BinderTemplateResponse templates = vaultClient.newRequest(BinderTemplateRequest.class) .retrieveBinderTemplateCollection();
String templateName = templates.getData().get(0).getName(); BinderTemplateResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .retrieveBinderTemplateAttributes(templateName); for (BinderTemplate data : response.getData()) { System.out.println("\n**** Data Item **** "); System.out.println("Name = " + data.getName()); System.out.println("Label = " + data.getLabel()); System.out.println("Active = " + data.getActive()); System.out.println("Type = " + data.getType()); System.out.println("Subtype = " + data.getSubType()); System.out.println("Classification = " + data.getClassification()); System.out.println("Filing Model = " + data.getFilingModel()); }
public BinderTemplateResponse retrieveBinderTemplateNodeAttributes(String templateName)
Retrieve the attributes of each node (folder/section) of a specific binder template in your vault.
templateName
- The binder template name__v field value.GET /api/{version}/objects/binders/templates/{template_name}/bindernodes
BinderTemplateResponse resp = vaultClient.newRequest(BinderTemplateRequest.class) .retrieveBinderTemplateNodeAttributes(binderTemplateName);
for (BinderTemplate data : resp.getData()) { System.out.println("\n**** Data Item **** "); System.out.println("Id = " + data.getId()); System.out.println("Parent Id = " + data.getParentId()); System.out.println("Node Type = " + data.getNodeType()); System.out.println("Label = " + data.getLabel()); System.out.println("Type = " + data.getType()); System.out.println("Subtype = " + data.getSubType()); System.out.println("Classification = " + data.getClassification()); System.out.println("Lifecycle = " + data.getLifecycle()); System.out.println("Number = " + data.getNumber()); System.out.println("Order = " + data.getOrder()); System.out.println("Hierarchy Mapping = " + data.getHierarchyMapping()); }
public BinderTemplateResponse createBinderTemplate(BinderTemplate binderTemplate)
Create a new binder template in your vault.
binderTemplate
- Template metadata to createPOST /api/{version}/objects/binders/templates
BinderTemplateResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .createBinderTemplate(template);
System.out.println(response.getResponse());
public BinderTemplateBulkResponse bulkCreateBinderTemplates()
Create from 1-500 new binder templates in your vault.
POST /api/{version}/objects/binders/templates
Prep a CSV string for testing StringBuilder csvText = new StringBuilder("name__v,label__v,type__v,subtype__v,classification__v,active__v\n"); csvText.append("binder_template_1__c,Binder Template 1," + DOCUMENT_TYPE + ",,,true\n"); csvText.append(",Binder Template 2," + DOCUMENT_TYPE + ",,,true\n");,
Prep a JSON string for testing StringBuilder jsonString = new StringBuilder(); jsonString.append("["); jsonString.append("{\"name__v\": \"binder_template_1__c\",\"label__v\": \"Binder Template 1\",\"type__v\": \"" + DOCUMENT_TYPE + "\",\"subtype__v\": \"\",\"classification__v\": \"\",\"active__v\": \"true\"},"); jsonString.append("{\"name__v\": \"\",\"label__v\": \"Binder Template 2\",\"type__v\": \"" + DOCUMENT_TYPE + "\",\"subtype__v\": \"\",\"classification__v\": \"\",\"active__v\": \"true\"}"); jsonString.append("]");,
Example 1 - CSV as a File BinderTemplateRequest request = vaultClient.newRequest(BinderTemplateRequest.class); String filePath = saveToDesktop(fileName, csvText.toString()); request.setInputPath(filePath); BinderTemplateBulkResponse response = request.bulkCreateBinderTemplates();,
Example 2 - CSV as Bytes BinderTemplateRequest request = vaultClient.newRequest(BinderTemplateRequest.class); request.setBinaryFile(fileName, csvText.toString().getBytes()); BinderTemplateBulkResponse response = request.bulkCreateBinderTemplates();,
Example 3 - JSON BinderTemplateBulkResponse request = vaultClient.newRequest(BinderTemplateRequest.class) .setContentTypeJson(); .setRequestString(jsonString.toString()); BinderTemplateBulkResponse response = request.bulkCreateBinderTemplates();
for (BinderTemplateBulkResponse.TemplateResult data : response.getData()) { System.out.println("Status: " + data.getResponseStatus()); System.out.println("Name: " + data.getName()); }
public BinderTemplateResponse updateBinderTemplate(String templateName, BinderTemplate binderTemplate)
Update an existing binder template in your vault.
By changing the document type/subtype/classification, you can move an existing binder
template to a different level of the document type hierarchy,
effectively reclassifying the template.
templateName
- The binder template name__v field value.binderTemplate
- Template metadata to update.PUT /api/{version}/objects/binders/templates/{template_name}
BinderTemplateResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .updateBinderTemplate(binderTemplateName, template);
System.out.println(response.getResponse());
public BinderTemplateBulkResponse bulkUpdateBinderTemplates()
Update from 1-500 binder templates in your vault.
By changing the document type/subtype/classification, you can move an existing
binder template to a different level of the document type hierarchy,
effectively reclassifying the template.
See bulkCreateBinderTemplates()
for example request and response
PUT /api/{version}/objects/binders/templates
public BinderTemplateResponse deleteBinderTemplate(String templateName)
Delete an existing binder template from your vault.
templateName
- The binder template name__v field value.DELETE /api/{version}/objects/binders/templates/{template_name}
BinderTemplateResponse resp = vaultClient.newRequest(BinderTemplateRequest.class) .deleteBinderTemplate(binderTemplateName);
if (resp.isSuccessful()) { System.out.println("Successfully deleted the binder."); }
public BinderTemplateResponse createBinderTemplateNode(String templateName, BinderTemplate binderTemplate)
Create nodes in an existing binder template.
templateName
- The binder template name__v field value.binderTemplate
- Template metadata to createPOST /api/{version}/objects/binders/templates/{template_name}/bindernodes
BinderTemplateResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .createBinderTemplateNode(binderTemplateName, templateNode);
System.out.println(response.getResponse()); BinderTemplate templateSubNode = new BinderTemplate(); templateSubNode.setId("anything"); // Doesn't seem to matter what this is, but it's required templateSubNode.setLabel("Sub Node 1"); templateSubNode.setNumber("01.01"); templateSubNode.setParentId(response.getData().get(0).getId()); // Generated id from above templateSubNode.setNodeType(BinderTemplate.NodeType.SECTION); response = vaultClient.newRequest(BinderTemplateRequest.class) .createBinderTemplateNode(binderTemplateName, templateSubNode); System.out.println(response.getResponse());
public BinderTemplateNodeBulkResponse bulkCreateBinderTemplateNodes(String templateName)
Update nodes in an existing binder template.
templateName
- The binder template name__v field value.POST /api/{version}/objects/binders/templates/{template_name}/bindernodes
Example 1 - CSV as File BinderTemplateNodeBulkResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .setInputPath(filePath) .bulkCreateBinderTemplateNodes(binderTemplateName);,
Example 1 - CSV as Bytes BinderTemplateNodeBulkResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .setBinaryFile(fileName, csvText.toString().getBytes()) .bulkCreateBinderTemplateNodes(binderTemplateName);,
Example 3 - JSON BinderTemplateNodeBulkResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .setContentTypeJson() .setRequestString(jsonText.toString()) .bulkCreateBinderTemplateNodes(binderTemplateName);,
for (BinderTemplateNodeBulkResponse.TemplateNodeResult result : response.getData()) { System.out.println("Status: " + result.getResponseStatus()); }
public BinderTemplateNodeBulkResponse replaceBinderTemplateNodes(String templateName)
Replace all binder nodes in an existing binder template. This action removes all existing nodes and replaces them with those specified in the input.
See bulkCreateBinderTemplateNodes(String)
for example request and response
templateName
- The binder template name__v field value.PUT /api/{version}/objects/binders/templates/{template_name}/bindernodes
BinderTemplateNodeBulkResponse response = vaultClient.newRequest(BinderTemplateRequest.class) .setInputPath(filePath) .replaceBinderTemplateNodes(binderTemplateName);
public BinderTemplateRequest setContentTypeCsv()
public BinderTemplateRequest setContentTypeJson()
public BinderTemplateRequest setContentTypeXForm()
public BinderTemplateRequest setBinaryFile(String filename, byte[] binaryContent)
filename
- file name (no path)binaryContent
- byte array of the file contentpublic BinderTemplateRequest setInputPath(String inputPath)
inputPath
- Absolute path to the file for the requestpublic BinderTemplateRequest setRequestString(String requestString)
requestString
- The source request as a stringCopyright © 2021. All rights reserved.