Class PhoneNumberGenerator

java.lang.Object
de.cuioss.test.generator.domain.PhoneNumberGenerator
All Implemented Interfaces:
TypedGenerator<String>

public class PhoneNumberGenerator extends Object implements TypedGenerator<String>
Generates random German-style phone numbers for testing purposes.

Phone number format: 0XXX/YYYY where:

  • XXX: Area code (100-999)
  • YYYY: Local number (1000-9999)

The generated numbers follow a simplified German phone number pattern:

  • Always starts with '0' (domestic format)
  • 3-digit area code
  • Forward slash separator
  • 4-digit local number

Example outputs:

 "0123/4567"
 "0789/1234"
 

Example usage:

 var generator = new PhoneNumberGenerator();
 String phoneNumber = generator.next(); // Returns a phone number like "0123/4567"
 
Author:
Oliver Wolff
  • Constructor Details

  • Method Details

    • next

      public String next()
      Description copied from interface: TypedGenerator
      Generates the next instance based on the generator's configuration. Implementations must ensure thread-safety.
      Specified by:
      next in interface TypedGenerator<String>
      Returns:
      A newly created instance. May be null if the generator explicitly supports null value generation.
    • getType

      public Class<String> getType()
      Description copied from interface: TypedGenerator
      Provides type information about what kind of objects this generator creates. The default implementation uses the first non-null result from TypedGenerator.next() to determine the type.

      Note: If your generator may return null values or the generated type differs from the actual instance type, you should override this method.

      Specified by:
      getType in interface TypedGenerator<String>
      Returns:
      The class information indicating which type this generator is responsible for.