Skip to content

Conversation

@rajiv-jain-netapp
Copy link

@rajiv-jain-netapp rajiv-jain-netapp commented Oct 28, 2025

Description

Updated the class structure for the framwork classes
This PR...

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?

*
* @param values
*/
public void updateStorageVolume(Map<String,String> values)

Choose a reason for hiding this comment

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

We can have model where we have nested hierarchy of the file and volume model combined instead of map. This will help us know what fields are required for what operation from readability perspective.

Copy link
Author

Choose a reason for hiding this comment

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

took care


private static final Logger s_logger = (Logger) LogManager.getLogger(StorageStrategy.class);

protected enum PROTOCOLS

Choose a reason for hiding this comment

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

OntapStorage also has protocol, we can remove this

Copy link
Author

Choose a reason for hiding this comment

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

took care

* createNameSpace for Nvme/TCP and Nvme/FC protocol
* @param values
*/
abstract public CloudStackVolume createCloudStackVolume(Map<String,String> values);

Choose a reason for hiding this comment

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

as per discussion, we should pass those new models as a param also instead of map in required methods

Copy link
Author

Choose a reason for hiding this comment

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

took care


public class AccessGroup {

Igroup igroup;

Choose a reason for hiding this comment

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

please specify as private because we already have a getter with public


public class CloudStackVolume {

FileInfo file;

Choose a reason for hiding this comment

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

same here, define as private

public class AccessGroup {

Igroup igroup;
Policy policy;

Choose a reason for hiding this comment

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

This should be ExportPolicy object

Copy link
Author

@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.

Incorporated review comments

*
* @param values
*/
public void updateStorageVolume(Map<String,String> values)
Copy link
Author

Choose a reason for hiding this comment

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

took care


private static final Logger s_logger = (Logger) LogManager.getLogger(StorageStrategy.class);

protected enum PROTOCOLS
Copy link
Author

Choose a reason for hiding this comment

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

took care

* createNameSpace for Nvme/TCP and Nvme/FC protocol
* @param values
*/
abstract public CloudStackVolume createCloudStackVolume(Map<String,String> values);
Copy link
Author

Choose a reason for hiding this comment

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

took care

ISCSI
}

public static final String NFS = "nfs";
Copy link
Collaborator

Choose a reason for hiding this comment

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

These 2 constants can be deleted

Copy link
Author

Choose a reason for hiding this comment

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

Sure

Copy link
Collaborator

@sandeeplocharla sandeeplocharla left a comment

Choose a reason for hiding this comment

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

Please see if the constants can be removed as part of the next PR

@rajiv-jain-netapp rajiv-jain-netapp merged commit 618f957 into main Oct 28, 2025
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.

5 participants