Skip to content

Conversation

suryag1201
Copy link

@suryag1201 suryag1201 commented Oct 16, 2025

Description

NAS and Job Feign Client with POJOs

Types of changes

  • Breaking change (fix or feature that would cause existing functionality to change)
  • New feature (non-breaking change which adds functionality)
  • Bug fix (non-breaking change which fixes an issue)
  • Enhancement (improves an existing feature and functionality)
  • Cleanup (Code refactoring and cleanup, that may add test cases)
  • Build/CI
  • Test (unit or integration test code)

Feature/Enhancement Scale or Bug Severity

Feature/Enhancement Scale

  • Major
  • Minor

Bug Severity

  • BLOCKER
  • Critical
  • Major
  • Minor
  • Trivial

Screenshots (if appropriate):

How Has This Been Tested?

How did you try to break this feature and the system with this change?

* @author Administrator
*
*/
@Lazy
Copy link
Collaborator

Choose a reason for hiding this comment

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

Job is needed while performing most of ontap operations, so, is Lazy needed?

Copy link
Author

Choose a reason for hiding this comment

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

Once this is in use, it will get initialise and next time it will be available so it will not go to initilize phase again so we can use lazy annotation, only SVM and cluster i did not require lazy bcz we need disaggregated and protocol info

//File Operations

@RequestMapping(method = RequestMethod.GET, value="/{volume.uuid}/files/{path}")
OntapResponse<FileInfo> getFileResponse(URI uri, @RequestHeader("Authorization") String header, @PathVariable(name = "volume.uuid", required = true) String volumeUUID,
Copy link
Collaborator

Choose a reason for hiding this comment

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

I remember seeing OnTapResponse, was this changed?

Copy link
Author

Choose a reason for hiding this comment

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

yes changed to OntapResponse

import org.springframework.web.bind.annotation.RequestMethod;


@FeignClient(name = "VolumeClient", url = "https://{clusterIP}/api/storage/volumes", configuration = FeignConfiguration.class)
Copy link
Collaborator

Choose a reason for hiding this comment

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

I guess here we can use Lazy

Copy link
Author

Choose a reason for hiding this comment

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

done!

private Integer index = null;

public enum ProtocolsEnum {
any("any"),
Copy link
Collaborator

Choose a reason for hiding this comment

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

Shall we leave them as is? Or shall we have only the ones that we would be supporting?

Copy link
Author

Choose a reason for hiding this comment

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

removed

}

@Override
public int hashCode() {
Copy link
Collaborator

Choose a reason for hiding this comment

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

Could remove this too

Copy link
Author

Choose a reason for hiding this comment

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

done!

return o.toString().replace("\n", "\n ");
}

public static class ExportClient {
Copy link
Collaborator

Choose a reason for hiding this comment

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

lets put this somewhere in beginning itself, instead at the EOF?

Copy link
Author

Choose a reason for hiding this comment

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

shifted little up

Copy link
Collaborator

@sandeeplocharla sandeeplocharla Oct 16, 2025

Choose a reason for hiding this comment

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

Volume.java doesn't have a reference to Aggregate.java, please include it, if we are removing this
Also, can you please see if 'size' could be added?

Copy link
Author

Choose a reason for hiding this comment

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

added it

Copy link

@rajiv-jain-netapp rajiv-jain-netapp left a comment

Choose a reason for hiding this comment

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

some minor comments, approving them with this since they are not blocker. pls ensure to take up them in next PR


@Override
public int hashCode() {
return Objects.hash( id, name, rules, svm);

Choose a reason for hiding this comment

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

hashcode and equals should use same set of attributes to evaluate the usecase.

Copy link
Author

Choose a reason for hiding this comment

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

sure, will include in next PR

public enum ProtocolsEnum {
any("any"),

nfs("nfs"),

Choose a reason for hiding this comment

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

nfs is nfs3 only, do we really need nfs3 separately ?

}

@Override
public int hashCode() {

Choose a reason for hiding this comment

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

same here

@suryag1201 suryag1201 merged commit c585299 into main Oct 17, 2025
14 of 16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants