All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.meanbean.factories.basic.DateFactory Maven / Gradle / Ivy

Go to download

Mean Bean is an open source Java test library that tests equals and hashCode contract compliance, as well as JavaBean/POJO getter and setter methods.

There is a newer version: 2.0.3
Show newest version
package org.meanbean.factories.basic;

import java.util.Date;

import org.meanbean.util.RandomValueGenerator;

/**
 * Concrete Factory that creates random Date objects.
 * 
 * @author Graham Williamson
 */
public final class DateFactory extends RandomFactoryBase {

	/** Unique version ID of this Serializable class. */
	private static final long serialVersionUID = 1L;

	/**
	 * Construct a new Date object factory.
	 * 
	 * @param randomValueGenerator
	 *            A random value generator used by the Factory to generate random values.
	 * 
	 * @throws IllegalArgumentException
	 *             If the specified randomValueGenerator is deemed illegal. For example, if it is null.
	 */
	public DateFactory(RandomValueGenerator randomValueGenerator) throws IllegalArgumentException {
		super(randomValueGenerator);
	}

	/**
	 * Create a new Date object.
	 * 
	 * @return A new Date object.
	 */
	@Override
	public Date create() {
		// Get random time since the epoch
		long randomTime = Math.abs(getRandomValueGenerator().nextLong());
		return new Date(randomTime);
	}
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy