lojix/power_model/src/main/com/thesett/aima/attribute/impl/DoubleRangeType.java
public static Type createInstance(String name, double min, double max)
    {
        // Ensure that min is less than or equal to max.
        if (min > max)
        {
            throw new IllegalArgumentException("'min' must be less than or equal to 'max'.");
        }

        synchronized (DOUBLE_RANGE_TYPES)
        {
            // Add the newly created type to the map of all types.
            DoubleRangeType newType = new DoubleRangeType(name, min, max);

            // Ensure that the named type does not already exist, unless it has an identical definition already, in which
            // case the old definition can be re-used and the new one discarded.
            DoubleRangeType oldType = DOUBLE_RANGE_TYPES.get(name);

            if ((oldType != null) && !oldType.equals(newType))
            {
                throw new IllegalArgumentException("The type '" + name + "' already exists and cannot be redefined.");
            }
            else if ((oldType != null) && oldType.equals(newType))
            {
                return oldType;
            }
            else
            {
                DOUBLE_RANGE_TYPES.put(name, newType);

                return newType;
            }
        }
    }
public static Type createInstance(String name, double min, double max)
    {
        // Ensure that min is less than or equal to max.
        if (min > max)
        {
            throw new IllegalArgumentException("'min' must be less than or equal to 'max'.");
        }

        synchronized (DOUBLE_RANGE_TYPES)
        {
            // Add the newly created type to the map of all types.
            DoubleRangeType newType = new DoubleRangeType(name, min, max);

            // Ensure that the named type does not already exist, unless it has an identical definition already, in which
            // case the old definition can be re-used and the new one discarded.
            DoubleRangeType oldType = DOUBLE_RANGE_TYPES.get(name);

            if ((oldType != null) && !oldType.equals(newType))
            {
                throw new IllegalArgumentException("The type '" + name + "' already exists and cannot be redefined.");
            }
            else if ((oldType != null) && oldType.equals(newType))
            {
                return oldType;
            }
            else
            {
                DOUBLE_RANGE_TYPES.put(name, newType);

                return newType;
            }
        }
    }
public static Type createInstance ( String name , double min , double max ) { // Ensure that min is less than or equal to max. if ( min > max ) { throw new IllegalArgumentException ( "'min' must be less than or equal to 'max'." ) ; } synchronized ( DOUBLE_RANGE_TYPES ) { // Add the newly created type to the map of all types. DoubleRangeType newType = new DoubleRangeType ( name , min , max ) ; // Ensure that the named type does not already exist, unless it has an identical definition already, in which // case the old definition can be re-used and the new one discarded. DoubleRangeType oldType = DOUBLE_RANGE_TYPES . get ( name ) ; if ( ( oldType != null ) && ! oldType . equals ( newType ) ) { throw new IllegalArgumentException ( "The type '" + name + "' already exists and cannot be redefined." ) ; } else if ( ( oldType != null ) && oldType . equals ( newType ) ) { return oldType ; } else { DOUBLE_RANGE_TYPES . put ( name , newType ) ; return newType ; } } }
Creates a new double range type with the specified name, if it does not already exist.

@param  name The name of the double range type to create.
@param  min  The minimum value that an instance of the type can take.
@param  max  The maximum value that an instance of teh type can take.

@return A new double range type.

@throws IllegalArgumentException If min is not less than or equal to max, or the named type already exists.
Creates a new double range type with the specified name if it does not already exist .