Class StrategyValidator

java.lang.Object
com.bluebell.greenhouse.radicle.validation.strategy.StrategyValidator

public final class StrategyValidator extends Object
Validation helpers for strategy entities, DTOs, and service/controller flows.
Version:
2.0.5
Author:
Stephen Prizio
  • Method Details

    • validateStrategyUid

      public static void validateStrategyUid(String uid)
      Validates a strategy uid.
      Parameters:
      uid - strategy uid
    • validateStrategyReferenceCode

      public static void validateStrategyReferenceCode(String referenceCode)
      Validates a strategy reference code.
      Parameters:
      referenceCode - strategy reference code
    • validateStrategy

      public static void validateStrategy(Strategy strategy)
      Validates a strategy entity.
      Parameters:
      strategy - Strategy
    • validateStrategyFilter

      public static void validateStrategyFilter(StrategyFilter filter)
      Validates a strategy search filter.
      Parameters:
      filter - StrategyFilter
    • validateStrategyIdentifierRequest

      public static void validateStrategyIdentifierRequest(String strategyUid, String referenceCode)
      Validates that a strategy identifier request includes either uid or reference code.
      Parameters:
      strategyUid - strategy uid
      referenceCode - strategy reference code
    • validateStrategyPayload

      public static void validateStrategyPayload(CreateUpdateStrategyDTO data, String errorMessage)
      Validates strategy create/update payload requirements.
      Parameters:
      data - CreateUpdateStrategyDTO
      errorMessage - error message
    • validateAccountStrategyUpdatePayload

      public static void validateAccountStrategyUpdatePayload(UpdateAccountStrategyDTO data, String errorMessage)
      Validates account-strategy assignment payload requirements.
      Parameters:
      data - UpdateAccountStrategyDTO
      errorMessage - error message
    • validateStrategyHasImplementations

      public static void validateStrategyHasImplementations(String referenceCode, List<CreateStrategyImplementationDTO> implementationDTOs)
      Validates that a new strategy includes at least one implementation.
      Parameters:
      referenceCode - strategy reference code
      implementationDTOs - implementation payloads
    • validateCreateStrategyImplementationPayload

      public static void validateCreateStrategyImplementationPayload(CreateStrategyImplementationDTO data, String errorMessage)
      Validates nested strategy-implementation payload requirements for strategy creation.
      Parameters:
      data - CreateStrategyImplementationDTO
      errorMessage - error message
    • validateDuplicateReferenceCode

      public static void validateDuplicateReferenceCode(Strategy strategy, Strategy duplicate, String referenceCode, boolean isNew)
      Validates duplicate strategy reference-code conflicts.
      Parameters:
      strategy - current strategy
      duplicate - duplicate strategy lookup result
      referenceCode - sanitized reference code
      isNew - is new entity
    • validateDuplicateName

      public static void validateDuplicateName(Strategy strategy, Strategy duplicate, String name, boolean isNew)
      Validates duplicate strategy-name conflicts.
      Parameters:
      strategy - current strategy
      duplicate - duplicate strategy lookup result
      name - sanitized strategy name
      isNew - is new entity
    • validateStrategyImplementationUid

      public static void validateStrategyImplementationUid(String uid)
      Validates a strategy implementation uid.
      Parameters:
      uid - strategy implementation uid
    • validateStrategyImplementation

      public static void validateStrategyImplementation(StrategyImplementation strategyImplementation)
      Validates a strategy implementation entity.
      Parameters:
      strategyImplementation - StrategyImplementation
    • validateStrategyImplementationFilter

      public static void validateStrategyImplementationFilter(StrategyImplementationFilter filter)
      Validates a strategy implementation search filter.
      Parameters:
      filter - StrategyImplementationFilter
    • validateStrategyImplementationPayload

      public static void validateStrategyImplementationPayload(CreateUpdateStrategyImplementationDTO data, String errorMessage)
      Validates strategy-implementation create/update payload requirements.
      Parameters:
      data - CreateUpdateStrategyImplementationDTO
      errorMessage - error message
    • validateStrategyAccountsUpdatePayload

      public static void validateStrategyAccountsUpdatePayload(UpdateStrategyAccountsDTO data, String errorMessage)
      Validates strategy-account synchronization payload requirements.
      Parameters:
      data - UpdateStrategyAccountsDTO
      errorMessage - error message
    • resolveImplementationType

      public static StrategyImplementationType resolveImplementationType(String implementationType)
      Resolves and validates a strategy implementation type from a raw code.
      Parameters:
      implementationType - raw implementation type code
      Returns:
      StrategyImplementationType
    • validateDuplicateImplementationType

      public static void validateDuplicateImplementationType(StrategyImplementation strategyImplementation, Strategy strategy, StrategyImplementationType implementationType, StrategyImplementation duplicate, boolean isNew)
      Validates duplicate strategy-implementation-type conflicts within a strategy.
      Parameters:
      strategyImplementation - current implementation
      strategy - owning strategy
      implementationType - implementation type
      duplicate - duplicate implementation lookup result
      isNew - is new entity
    • validateStrategyImplementationDeletion

      public static void validateStrategyImplementationDeletion(StrategyImplementation strategyImplementation, long implementationCount)
      Validates that deleting a strategy implementation will not violate the minimum count rule.
      Parameters:
      strategyImplementation - StrategyImplementation
      implementationCount - current implementation count for the strategy