Interface SecurityGroupProvider

All Superinterfaces:
PluginProvider

public interface SecurityGroupProvider extends PluginProvider
  • Method Details

    • prepareSecurityGroup

      ServiceResponse<SecurityGroup> prepareSecurityGroup(SecurityGroup securityGroup, Map opts)
      Prepare the SecurityGroup information before validate, create, and update. If a ServiceResponse is not marked as successful the parent process will be terminated and the results may be presented to the user.
      Parameters:
      securityGroup - SecurityGroup information
      opts - additional configuration options including any form data
      Returns:
      ServiceResponse
    • validateSecurityGroup

      ServiceResponse validateSecurityGroup(SecurityGroup securityGroup, Map opts)
      Validates the submitted SecurityGroup information. If a ServiceResponse is not marked as successful the validation results will be bubbled up to the user.
      Parameters:
      securityGroup - SecurityGroup information
      opts - additional configuration options
      Returns:
      ServiceResponse
    • createSecurityGroup

      ServiceResponse<SecurityGroupLocation> createSecurityGroup(SecurityGroup securityGroup, Map opts)
      Creates a SecurityGroupLocation from the submitted SecurityGroup
      Parameters:
      securityGroup - SecurityGroup object
      opts - additional configuration options
      Returns:
      ServiceResponse containing the resulting SecurityGroupLocation including the information (externalId, etc.) which identifies the security group within the current context (usually a cloud).
    • updateSecurityGroup

      ServiceResponse<SecurityGroup> updateSecurityGroup(SecurityGroup securityGroup, Map opts)
      Update the security group
      Parameters:
      securityGroup - SecurityGroup object
      opts - additional configuration options
      Returns:
      ServiceResponse
    • deleteSecurityGroup

      ServiceResponse deleteSecurityGroup(SecurityGroup securityGroup)
      Delete a SecurityGroup
      Parameters:
      securityGroup - SecurityGroup object
      Returns:
      ServiceResponse
    • deleteSecurityGroupLocation

      ServiceResponse deleteSecurityGroupLocation(SecurityGroupLocation securityGroupLocation)
      Parameters:
      securityGroupLocation - SecurityGroupLocation information
      Returns:
      ServiceResponse
    • prepareSecurityGroupRule

      ServiceResponse<SecurityGroupRule> prepareSecurityGroupRule(SecurityGroupRule securityGroupRule, Map opts)
      Prepare the security group rule before validate, create, and update. If a ServiceResponse is not marked as successful the parent process will be terminated and the results may be presented to the user.
      Parameters:
      securityGroupRule - SecurityGroupRule object
      opts - additional configuration options including all form data
      Returns:
      ServiceResponse
    • validateSecurityGroupRule

      ServiceResponse<SecurityGroupRule> validateSecurityGroupRule(SecurityGroupRule securityGroupRule)
      Validate the submitted security group rule object. If a ServiceResponse is not marked as successful the validation results in the errors and msg properties will be surfaced to the user interface.
      Parameters:
      securityGroupRule - SecurityGroupRule object
      Returns:
      ServiceResponse
    • createSecurityGroupRule

      ServiceResponse<SecurityGroupRuleLocation> createSecurityGroupRule(SecurityGroupLocation securityGroupLocation, SecurityGroupRule securityGroupRule)
      Creates a SecurityGroupRuleLocation from the submitted SecurityGroupRule
      Parameters:
      securityGroupRule - SecurityGroupRule object
      Returns:
      ServiceResponse containing the resulting SecurityGroupRuleLocation including the information (externalId, etc.) which identifies the security group rule within the current context (usually a cloud).
    • updateSecurityGroupRule

      ServiceResponse<SecurityGroupRule> updateSecurityGroupRule(SecurityGroupLocation securityGroupLocation, SecurityGroupRule originalRule, SecurityGroupRule updatedRule)
      Update the security group rule
      Parameters:
      securityGroupLocation - the SecurityGroupLocation
      originalRule - the rule before any updates were applied.
      updatedRule - the rule with all updates applied
      Returns:
      ServiceResponse
    • deleteSecurityGroupRule

      ServiceResponse deleteSecurityGroupRule(SecurityGroupLocation securityGroupLocation, SecurityGroupRule rule)
      Parameters:
      securityGroupLocation - SecurityGroupLocation object
      rule - SecurityGroupRule to be deleted
      Returns:
      ServiceResponse
    • addSecurityGroupAssociation

      default ServiceResponse addSecurityGroupAssociation(ComputeServer server, SecurityGroup securityGroup, NetworkServer networkServer)
      This method is called for every security group that is associationed to a server. Often called on the provisioning of new workloads or the update of existing workloads.
      Parameters:
      server - ComputeServer the server to associate the security group to
      securityGroup - SecurityGroup the security group to associate
      networkServer - NetworkServer the network server context for the association
      Returns:
      ServiceResponse describing the success of the operation
    • removeSecurityGroupAssociation

      default ServiceResponse removeSecurityGroupAssociation(ComputeServer server, SecurityGroup securityGroup, NetworkServer networkServer)
      This method is called for every security group that is disassociated from a server. Often called on the deprovisioning of workloads or the update of existing workloads.
      Parameters:
      server - ComputeServer the server to remove the security group from
      securityGroup - SecurityGroup the security group to disassociate
      networkServer - NetworkServer the network server context for the disassociation
      Returns:
      ServiceResponse describing the success of the operation