AppserverIo\Appserver\Core\Api\Node\EpbNode::getEnterpriseBeans PHP Method

getEnterpriseBeans() public method

Return's the enterprise beans information.
public getEnterpriseBeans ( ) : EnterpriseBeansNode
return EnterpriseBeansNode The enterprise beans information
    public function getEnterpriseBeans()
    {
        return $this->enterpriseBeans;
    }

Usage Example

 /**
  * Parses the bean context's deployment descriptor file for beans
  * that has to be registered in the object manager.
  *
  * @return void
  */
 public function parse()
 {
     // load the web application base directory
     $webappPath = $this->getBeanContext()->getWebappPath();
     // prepare the deployment descriptor
     $deploymentDescriptor = AppEnvironmentHelper::getEnvironmentAwareGlobPattern($webappPath, 'META-INF' . DIRECTORY_SEPARATOR . 'epb');
     // query whether we found epb.xml deployment descriptor file
     if (file_exists($deploymentDescriptor) === false) {
         return;
     }
     // validate the passed configuration file
     /** @var \AppserverIo\Appserver\Core\Api\ConfigurationService $configurationService */
     $configurationService = $this->getApplication()->newService('AppserverIo\\Appserver\\Core\\Api\\ConfigurationService');
     $configurationService->validateFile($deploymentDescriptor, null, true);
     // prepare and initialize the configuration node
     $epbNode = new EpbNode();
     $epbNode->initFromFile($deploymentDescriptor);
     // query whether or not the deployment descriptor contains any beans
     /** @var \AppserverIo\Appserver\Core\Api\Node\EnterpriseBeansNode $enterpriseBeans */
     if ($enterpriseBeans = $epbNode->getEnterpriseBeans()) {
         // parse the session beans of the deployment descriptor
         /** @var \AppserverIo\Appserver\Core\Api\Node\SessionNode $sessionNode */
         foreach ($enterpriseBeans->getSessions() as $sessionNode) {
             $this->processConfigurationNode($sessionNode);
         }
         // parse the message driven beans from the deployment descriptor
         /** @var \AppserverIo\Appserver\Core\Api\Node\MessageDrivenNode $messageDrivenNode */
         foreach ($enterpriseBeans->getMessageDrivens() as $messageDrivenNode) {
             $this->processConfigurationNode($messageDrivenNode);
         }
     }
 }