Exemple #1
0
# importa a classe de aplicacao
require_once 'SIALApplication.php';
# ATENCAO: Esta definição deve ser feita antes de invocar
# o arquivo config.ini.
# variavel que informa ao config.ini a pasta
if (!defined('__MAINAPPDOCS__')) {
    $sep = str_replace(':', DIRECTORY_SEPARATOR, ':br:gov:mainapp');
    define('__MAINAPPDOCS__', current(explode($sep, __DIR__)), FALSE);
}
/* determina o nome do modulo WebService - Sempre será 'ws' */
Request::factory()->setModule('ws');
# define o ambiente de execução e o caminho do arquivo de configuração
$environment = isset($_SERVER['APPLICATION_ENV']) ? $_SERVER["APPLICATION_ENV"] : 'development';
$appConfigFile = dirname(__DIR__) . DIRECTORY_SEPARATOR . 'application' . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR;
# Cria a aplicacao
$app = SIALApplication::factory($environment, $appConfigFile);
require_once rtrim($SSPCoreDir, '/') . '/br/gov/sial/core/util/lib/NuSoap/nusoap.php';
$ICMBioWSservice = new \soap_server();
$ICMBioWSservice->configureWSDL('icmbiows');
$ICMBioWSservice->soap_defencoding = 'UTF-8';
$ICMBioWSservice->decode_utf8 = FALSE;
$ICMBioWSservice->title = 'ICMBio WebService(s)';
# define configuracoes do webservice
# respositorios de servicos que serao disponibilizados
define('WS_ENABLE_PATH', dirname(__FILE__) . constant('DIRECTORY_SEPARATOR') . 'services-enable' . constant('DIRECTORY_SEPARATOR'), FALSE);
# configura os servicoes que serao disponibilizados
# estrategia:
# - se a data de modificacao do diretorio tiver sido modificado
#  	- GERA LISTA de todos os arquivos servicos disponiveis( services-enable.* )
#
# -carrega cada um dos elementos da lista como um servico
 /**
  * Adiciona um evento.
  *
  * @param string $event
  * @param Function $callback
  * @return ControllerAbstract
  * */
 public function addEvent($event, $callback)
 {
     $this->_SIALApplication->addEvent($event, $callback);
     return $this;
 }