Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -181,4 +181,96 @@ JobResponse restoreFileFromSnapshot(@Param("authHeader") String authHeader,
@Headers({"Authorization: {authHeader}", "Content-Type: application/json"})
JobResponse restoreFileFromSnapshotCli(@Param("authHeader") String authHeader,
CliSnapshotRestoreRequest request);

/**
* Creates a consistency group.
*
* <p>ONTAP REST: {@code POST /api/application/consistency-groups}</p>
*
* @param authHeader Basic auth header
* @param request consistency group create request body
* @return JobResponse containing the async job reference
*/
@RequestLine("POST /api/application/consistency-groups")
@Headers({"Authorization: {authHeader}", "Content-Type: application/json"})
JobResponse createConsistencyGroup(@Param("authHeader") String authHeader,
Map<String, Object> request);

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't it better to create a model for CG request, instead?

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

to create CG, request should be model type why map?


/**
* Lists consistency groups.
*
* <p>ONTAP REST: {@code GET /api/application/consistency-groups}</p>
*
* @param authHeader Basic auth header
* @param queryParams Optional query parameters
* @return Paginated consistency group records
*/
@RequestLine("GET /api/application/consistency-groups")
@Headers({"Authorization: {authHeader}"})
OntapResponse<Map<String, Object>> getConsistencyGroups(@Param("authHeader") String authHeader,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the return type should be OntapResponse of type ConsistencyGroup Object

@QueryMap Map<String, Object> queryParams);

/**
* Creates (starts) a consistency group snapshot.
*
* <p>ONTAP REST: {@code POST /api/application/consistency-groups/{cgUuid}/snapshots}</p>
*
* @param authHeader Basic auth header
* @param cgUuid consistency group UUID
* @param request snapshot start request body
* @return JobResponse containing the async job reference
*/
@RequestLine("POST /api/application/consistency-groups/{cgUuid}/snapshots")
@Headers({"Authorization: {authHeader}", "Content-Type: application/json"})
JobResponse createConsistencyGroupSnapshot(@Param("authHeader") String authHeader,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here for request

@Param("cgUuid") String cgUuid,
Map<String, Object> request);

/**
* Lists snapshots for a consistency group.
*
* <p>ONTAP REST: {@code GET /api/application/consistency-groups/{cgUuid}/snapshots}</p>
*
* @param authHeader Basic auth header
* @param cgUuid consistency group UUID
* @param queryParams Optional query parameters
* @return Paginated consistency group snapshot records
*/
@RequestLine("GET /api/application/consistency-groups/{cgUuid}/snapshots")
@Headers({"Authorization: {authHeader}"})
OntapResponse<Map<String, Object>> getConsistencyGroupSnapshots(@Param("authHeader") String authHeader,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here for return type

@Param("cgUuid") String cgUuid,
@QueryMap Map<String, Object> queryParams);

/**
* Commits a started consistency group snapshot.
*
* <p>ONTAP REST: {@code PATCH /api/application/consistency-groups/{cgUuid}/snapshots/{snapshotUuid}}</p>
*
* @param authHeader Basic auth header
* @param cgUuid consistency group UUID
* @param snapshotUuid consistency group snapshot UUID
* @param request commit request body
* @return JobResponse containing the async job reference
*/
@RequestLine("PATCH /api/application/consistency-groups/{cgUuid}/snapshots/{snapshotUuid}")
@Headers({"Authorization: {authHeader}", "Content-Type: application/json"})
JobResponse commitConsistencyGroupSnapshot(@Param("authHeader") String authHeader,
@Param("cgUuid") String cgUuid,
@Param("snapshotUuid") String snapshotUuid,
Map<String, Object> request);

/**
* Deletes a consistency group.
*
* <p>ONTAP REST: {@code DELETE /api/application/consistency-groups/{cgUuid}}</p>
*
* @param authHeader Basic auth header
* @param cgUuid consistency group UUID
* @return JobResponse containing the async job reference
*/
@RequestLine("DELETE /api/application/consistency-groups/{cgUuid}")
@Headers({"Authorization: {authHeader}"})
JobResponse deleteConsistencyGroup(@Param("authHeader") String authHeader,
@Param("cgUuid") String cgUuid);
}
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,9 @@ public DataStore initialize(Map<String, Object> dsInfos) {
}
logger.info("Using Data LIF for storage access: " + dataLIF);
details.put(OntapStorageConstants.DATA_LIF, dataLIF);
if (storageStrategy.getResolvedSvmUuid() != null && !storageStrategy.getResolvedSvmUuid().isEmpty()) {
details.put(OntapStorageConstants.SVM_UUID, storageStrategy.getResolvedSvmUuid());
}
Comment thread
rajiv-jain-netapp marked this conversation as resolved.
logger.info("Creating ONTAP volume '" + storagePoolName + "' with size: " + capacityBytes + " bytes (" +
(capacityBytes / (1024 * 1024 * 1024)) + " GB)");
try {
Expand Down
Loading
Loading