/**
  * put your comment there...
  * 
  */
 public function &activate()
 {
     # Getting extension class
     $extensionClass = CJT_Framework_Extensions_Package_Extension::getPluginExtensionClass($this->extensionPluginObject);
     # No activation process until the Plugin is deactivated before
     # It must be installed first.
     if (CJT_Framework_Extensions_Package_State_Extension::isInstalled($extensionClass)) {
         # Initialize
         $stateExtension = CJT_Framework_Extensions_Package_State_Extension::create($extensionClass);
         $statePackage = new CJT_Framework_Extensions_Package_State_Packages($stateExtension->getExtensionDeDoc());
         $extBlocks = new CJT_Framework_Extensions_Package_Blocks($statePackage);
         # Enable all Blocks associated with extension packages
         $extBlocks->setState(CJT_Framework_Extensions_Package_Blocks::ACTIVE);
     }
     # Chain
     return $this;
 }
 /**
  * Uninstaller for all Package Extension
  * 
  * @param mixed $method
  * @param mixed $params
  * @return CJTWordpressEvents
  */
 public static function __callStatic($method, $params)
 {
     # Initialize
     $packageModel = CJTModel::getInstance('package');
     # Getting extension package class name
     $extensionClass = basename(str_replace('_', DIRECTORY_SEPARATOR, $method));
     # Extension state
     $extensionState = CJT_Framework_Extensions_Package_State_Extension::create($extensionClass);
     $extensionPackagesState = new CJT_Framework_Extensions_Package_State_Packages($extensionState->getExtensionDeDoc());
     # Delete extension packages
     foreach ($extensionPackagesState->getInstalledPackages() as $name => $iPack) {
         # Remove package
         $packageModel->delete($iPack['id']);
     }
     # Remove install information
     $extensionPackagesState->clearInstallInfo();
     $extensionState->clearInstallInfo();
 }