Class Demands.UserClasses

  • All Implemented Interfaces:
    Iterable<UserClass>
    Enclosing class:
    Demands

    public class Demands.UserClasses
    extends Object
    implements Iterable<UserClass>
    Inner class to register and store user classes for the current demand object
    Author:
    markr
    • Constructor Detail

      • UserClasses

        public UserClasses()
        Constructor
    • Method Detail

      • registerUserClass

        protected void registerUserClass​(UserClass userClass)
        Register a user class
        Parameters:
        userClass - user class to be registered
      • createAndRegisterNewUserClass

        public UserClass createAndRegisterNewUserClass​(long externalId,
                                                       String name,
                                                       Mode mode,
                                                       TravelerType travellerType)
        Factory method to create and register a new user class on the demands
        Parameters:
        externalId - the external id for this user class
        name - the name for this user class
        mode - the mode for this user class
        travellerType - the travel type for this user class
        Returns:
        new traveler type created
      • getNumberOfUserClasses

        public int getNumberOfUserClasses()
        Collect the number of registered user classes
        Returns:
        number of user classes
      • getUserClassById

        public UserClass getUserClassById​(long id)
        Retrieve a user class by its id
        Parameters:
        id - id of the user class
        Returns:
        retrieved user class
      • getFirst

        public UserClass getFirst()
        Collect the first registered user class.
        Returns:
        first registered user class
      • getUserClassByExternalId

        public UserClass getUserClassByExternalId​(Object externalId,
                                                  boolean convertToLong)
        Retrieve a UserClass by its external Id This method has the option to convert the external Id parameter into a long value, to find the user class when using long values for external ids.
        Parameters:
        externalId - the external Id of the specified user class
        convertToLong - if true, the external Id is converted into a long before beginning the search
        Returns:
        the retrieved user class, or null if no user class was found
      • getUserClassByExternalId

        public UserClass getUserClassByExternalId​(Object externalId)
        Retrieve a UserClass by its external Id This method is not efficient, since it loops through all the registered user classes in order to find the required entry.
        Parameters:
        externalId - the external Id of the specified user class
        Returns:
        the retrieved user class, or null if no user class was found