*
This interface defines following property types: *
STRING
* BINARY
* LONG
* DOUBLE
* DATE
* BOOLEAN
* NAME
* PATH
* REFERENCE
* type
,
* as used in serialization.
* @param int $type the property type
* @return string the name of the specified type
* @throws IllegalArgumentException if type
* is not a valid property type.
*/
public static function nameFromValue( $type ) {
switch ( $type ) {
case self::STRING:
return self::TYPENAME_STRING;
case self::BINARY:
return self::TYPENAME_BINARY;
case self::BOOLEAN:
return self::TYPENAME_BOOLEAN;
case self::LONG:
return self::TYPENAME_LONG;
case self::DOUBLE:
return self::TYPENAME_DOUBLE;
case self::DATE:
return self::TYPENAME_DATE;
case self::PATH:
return self::TYPENAME_PATH;
case self::NAME:
return self::TYPENAME_NAME;
case self::REFERENCE:
return self::TYPENAME_REFERENCE;
default:
throw new IllegalArgumentException( "unknown type: " + $type );
}
}
/**
* Returns the numeric constant value of the type with the specified name.
* @param string $name the name of the property type
* @return int the numeric constant value
* @throws IllegalArgumentException if name
* is not a valid property type name.
*/
public static function valueFromName( $name ) {
if ( $name == self::TYPENAME_STRING ) {
return self::STRING;
} else if ( $name == self::TYPENAME_BINARY ) {
return self::BINARY;
} else if ( $name == self::TYPENAME_BOOLEAN ) {
return self::BOOLEAN;
} else if ( $name == self::TYPENAME_LONG ) {
return self::LONG;
} else if ( $name == self::TYPENAME_DOUBLE ) {
return self::DOUBLE;
} else if ( $name == self::TYPENAME_DATE ) {
return self::DATE;
} else if ( $name == self::TYPENAME_PATH ) {
return self::PATH;
} else if ( $name == self::TYPENAME_NAME ) {
return self::NAME;
} else if ( $name == self::TYPENAME_REFERENCE ) {
return self::REFERENCE;
} else {
throw new IllegalArgumentException( "unknown type: " + $name );
}
}
}
?>