CorujaClassManipulation Class Reference

List of all members.

Static Public Member Functions

static getClassNameFromClassDefinition ($strClassDefinition)
static getNamespaceFromClassDefinition ($strClassDefiniton)


Detailed Description

Class for manipulation of classes
Author:
Thiago Henrique Ramos da Mata <thiago.henrique.mata@gmail.com>

Definition at line 11 of file CorujaClassManipulation.class.php.


Member Function Documentation

static getClassNameFromClassDefinition ( strClassDefinition  )  [static]

Return classe name from class definition

Parameters:
String $strClassDefinition Class definition
Returns:
String Class name
Example:
 \1 
returns
 true 
.... getClassNameFromClassDefinition( "myNamespace::myClass" ); // returns "myClass"
Assert:
( "myNamespace::myClass" ) = "myClass"
Assert:
( "myClass" ) = "myClass"
Assert:
( "" ) = ""
Assert:
(null) throws InvalidArgumentException
Assert:
(123) throws InvalidArgumentException
Assert:
(array()) throws InvalidArgumentException
Assert:
(new stdClass()) throws InvalidArgumentException
Assert:
(false) throws InvalidArgumentException

Definition at line 31 of file CorujaClassManipulation.class.php.

Referenced by CodeInstrumentationReceiver::onEnterMethod(), CodeInstrumentationReceiver::onLeaveMethod(), CorujaClassManipulationTest::testGetClassNameFromClassDefinitionWithAnyString(), CorujaClassManipulationTest::testGetClassNameFromClassDefinitionWithNormalClassDefinition(), and CorujaClassManipulationTest::testGetClassNameFromClassDefinitionWithNullString().

00032         {
00033                 if(!is_string($strClassDefinition))
00034                 {
00035                         throw new InvalidArgumentException("Invalid argument [ ". var_export($strClassDefinition) ." ]. It should be string");
00036                 }
00037 
00038         $arrClassDefinition = explode( "::" , $strClassDefinition );
00039                 return array_pop( $arrClassDefinition );
00040         }

static getNamespaceFromClassDefinition ( strClassDefiniton  )  [static]

Return namespace from class definition

Parameters:
String $strClassDefinition Class definition
Returns:
String Namespace
Example:
 \1 
returns
 true 
.... getClassNameFromClassDefinition( "myNamespace::myClass" ); // returns "myNamespace"
Assert:
( "myNamespace::myClass" ) = "myNamespace"
Assert:
( "myClass" ) = ""
Assert:
( "" ) = ""
Assert:
(null) throws InvalidArgumentException
Assert:
(123) throws InvalidArgumentException
Assert:
(array()) throws InvalidArgumentException
Assert:
(new stdClass()) throws InvalidArgumentException
Assert:
(false) throws InvalidArgumentException

Definition at line 60 of file CorujaClassManipulation.class.php.

References CorujaArrayManipulation::getArrayField().

Referenced by CodeInstrumentationReceiver::onEnterMethod(), CodeInstrumentationReceiver::onLeaveMethod(), CorujaClassManipulationTest::testGetNamespaceFromClassDefinitionWithAnyString(), CorujaClassManipulationTest::testGetNamespaceFromClassDefinitionWithNormalClassDefinition(), and CorujaClassManipulationTest::testGetNamespaceFromClassDefinitionWithNullString().

00061         {
00062                 if(!is_string($strClassDefiniton))
00063                 {
00064                         throw new InvalidArgumentException("Invalid argument [ ". var_export($strClassDefiniton) ." ]. It should be string");
00065                 }
00066 
00067                 return CorujaArrayManipulation::getArrayField( explode( "::" , $strClassDefiniton )  , 1 , "" );
00068         }


The documentation for this class was generated from the following file:

Generated on Thu Feb 3 03:55:03 2011 for CodeToDiagram by  doxygen 1.5.9