From 0f2953588eaf5b5fbcedb08269b67f524d922403 Mon Sep 17 00:00:00 2001 From: andre guimaraes Date: Fri, 23 Jun 2017 11:09:34 +0000 Subject: [PATCH] Ajustando estrutura para IC. --- .classpath | 37 +++++++++++++++++++++++++++++++++++++ .project | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ .settings/.jsdtscope | 13 +++++++++++++ .settings/org.eclipse.core.resources.prefs | 3 +++ .settings/org.eclipse.jdt.core.prefs | 14 ++++++++++++++ .settings/org.eclipse.m2e.core.prefs | 4 ++++ .settings/org.eclipse.wst.common.component | 10 ++++++++++ .settings/org.eclipse.wst.common.project.facet.core.prefs.xml | 17 +++++++++++++++++ .settings/org.eclipse.wst.common.project.facet.core.xml | 11 +++++++++++ .settings/org.eclipse.wst.jsdt.ui.superType.container | 1 + .settings/org.eclipse.wst.jsdt.ui.superType.name | 1 + .settings/org.eclipse.wst.validation.prefs | 2 ++ .settings/org.hibernate.eclipse.console.prefs | 3 +++ .settings/org.jboss.ide.eclipse.as.core.prefs | 2 ++ .tern-project | 1 + apidoc.json | 7 +++++++ pom.xml | 157 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/dao/DAO.java | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/BusinessException.java | 16 ++++++++++++++++ src/main/java/br/gov/ans/exceptions/ErrorMessage.java | 41 +++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/ResourceConflictException.java | 16 ++++++++++++++++ src/main/java/br/gov/ans/exceptions/ResourceNotFoundException.java | 21 +++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/WrappedException.java | 16 ++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/BusinessExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/EJBAccessExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/EJBTransactionRolledbackExceptionHandler.java | 40 ++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/ExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/ForbiddenExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/LoginExceptionHandler.java | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/NotAcceptableExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/NotAllowedExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/NotAuthorizedExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/NotFoundExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/ResourceConflictExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/ResourceNotFoundExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/WebApplicationExceptionHandler.java | 35 +++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/exceptions/handlers/WrappedExceptionHandler.java | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/factories/DAOFactory.java | 29 +++++++++++++++++++++++++++++ src/main/java/br/gov/ans/factories/LoggerFactory.java | 18 ++++++++++++++++++ src/main/java/br/gov/ans/factories/PropertiesFactory.java | 38 ++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/factories/PropertiesFactoryLocal.java | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/factories/PropertiesFactoryServer.java | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/factories/qualifiers/Local.java | 15 +++++++++++++++ src/main/java/br/gov/ans/factories/qualifiers/PropertiesInfo.java | 13 +++++++++++++ src/main/java/br/gov/ans/factories/qualifiers/Server.java | 15 +++++++++++++++ src/main/java/br/gov/ans/filters/SessionInvalidateFilter.java | 34 ++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/dao/ColaboradorDAO.java | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/dao/TemplatesDAO.java | 97 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/modelo/Colaborador.java | 97 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/modelo/ColaboradorId.java | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/modelo/Template.java | 178 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/modelo/Versao.java | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/modelo/VersaoId.java | 74 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/rest/ColaboradorResource.java | 17 +++++++++++++++++ src/main/java/br/gov/ans/templates/rest/TemplateResource.java | 642 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/rest/TemplatesService.java | 9 +++++++++ src/main/java/br/gov/ans/templates/to/Template.java | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/util/Constantes.java | 5 +++++ src/main/java/br/gov/ans/templates/util/DAOUtils.java | 31 +++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/templates/util/TemplatesUtils.java | 28 ++++++++++++++++++++++++++++ src/main/java/br/gov/ans/utils/HttpHeadersUtil.java | 41 +++++++++++++++++++++++++++++++++++++++++ src/main/java/br/gov/ans/utils/MessageUtils.java | 47 +++++++++++++++++++++++++++++++++++++++++++++++ src/main/resources/META-INF/persistence.xml | 22 ++++++++++++++++++++++ src/main/resources/messages.properties | 6 ++++++ src/main/webapp/WEB-INF/beans.xml | 5 +++++ src/main/webapp/WEB-INF/jboss-deployment-structure.xml | 8 ++++++++ src/main/webapp/WEB-INF/jboss-web.xml | 5 +++++ src/main/webapp/WEB-INF/web.xml | 161 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/api_data.js | 1074 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/api_data.json | 1074 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/api_project.js | 15 +++++++++++++++ src/main/webapp/api-docs/api_project.json | 15 +++++++++++++++ src/main/webapp/api-docs/css/style.css | 532 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/img/favicon.ico | Bin 0 -> 894 bytes src/main/webapp/api-docs/img/glyphicons-halflings-white.png | Bin 0 -> 8777 bytes src/main/webapp/api-docs/img/glyphicons-halflings.png | Bin 0 -> 12799 bytes src/main/webapp/api-docs/index.html | 658 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/locales/ca.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/de.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/es.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/fr.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/locale.js | 46 ++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/locales/nl.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/pl.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/pt_br.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/ru.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/zh.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/locales/zh_cn.js | 25 +++++++++++++++++++++++++ src/main/webapp/api-docs/main.js | 705 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/utils/handlebars_helper.js | 327 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/utils/send_sample_request.js | 181 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/bootstrap-responsive.min.css | 9 +++++++++ src/main/webapp/api-docs/vendor/bootstrap.min.css | 9 +++++++++ src/main/webapp/api-docs/vendor/bootstrap.min.js | 6 ++++++ src/main/webapp/api-docs/vendor/diff_match_patch.min.js | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/handlebars.min.js | 28 ++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/jquery.min.js | 4 ++++ src/main/webapp/api-docs/vendor/lodash.min.js | 61 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/path-to-regexp/LICENSE | 21 +++++++++++++++++++++ src/main/webapp/api-docs/vendor/path-to-regexp/index.js | 204 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/polyfill.js | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/prettify.css | 101 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/prettify/lang-apollo.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-basic.js | 3 +++ src/main/webapp/api-docs/vendor/prettify/lang-clj.js | 18 ++++++++++++++++++ src/main/webapp/api-docs/vendor/prettify/lang-css.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-dart.js | 3 +++ src/main/webapp/api-docs/vendor/prettify/lang-erlang.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-go.js | 1 + src/main/webapp/api-docs/vendor/prettify/lang-hs.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-lisp.js | 3 +++ src/main/webapp/api-docs/vendor/prettify/lang-llvm.js | 1 + src/main/webapp/api-docs/vendor/prettify/lang-lua.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-matlab.js | 6 ++++++ src/main/webapp/api-docs/vendor/prettify/lang-ml.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-mumps.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-n.js | 4 ++++ src/main/webapp/api-docs/vendor/prettify/lang-pascal.js | 3 +++ src/main/webapp/api-docs/vendor/prettify/lang-proto.js | 1 + src/main/webapp/api-docs/vendor/prettify/lang-r.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-rd.js | 1 + src/main/webapp/api-docs/vendor/prettify/lang-scala.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-sql.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-tcl.js | 3 +++ src/main/webapp/api-docs/vendor/prettify/lang-tex.js | 1 + src/main/webapp/api-docs/vendor/prettify/lang-vb.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-vhdl.js | 3 +++ src/main/webapp/api-docs/vendor/prettify/lang-wiki.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/lang-xq.js | 3 +++ src/main/webapp/api-docs/vendor/prettify/lang-yaml.js | 2 ++ src/main/webapp/api-docs/vendor/prettify/prettify.css | 1 + src/main/webapp/api-docs/vendor/prettify/prettify.js | 30 ++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/prettify/run_prettify.js | 34 ++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/require.min.js | 36 ++++++++++++++++++++++++++++++++++++ src/main/webapp/api-docs/vendor/semver.min.js | 1 + src/main/webapp/api-docs/vendor/webfontloader.js | 18 ++++++++++++++++++ src/test/java/br/gov/ans/templates/teste/FunctionalTest.java | 42 ++++++++++++++++++++++++++++++++++++++++++ src/test/java/br/gov/ans/templates/teste/TemplatesTest.java | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ src/test/resources/mail-default.mustache | 46 ++++++++++++++++++++++++++++++++++++++++++++++ templates-broker/.classpath | 37 ------------------------------------- templates-broker/.project | 72 ------------------------------------------------------------------------ templates-broker/.settings/.jsdtscope | 13 ------------- templates-broker/.settings/org.eclipse.core.resources.prefs | 3 --- templates-broker/.settings/org.eclipse.jdt.core.prefs | 14 -------------- templates-broker/.settings/org.eclipse.m2e.core.prefs | 4 ---- templates-broker/.settings/org.eclipse.wst.common.component | 10 ---------- templates-broker/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml | 17 ----------------- templates-broker/.settings/org.eclipse.wst.common.project.facet.core.xml | 11 ----------- templates-broker/.settings/org.eclipse.wst.jsdt.ui.superType.container | 1 - templates-broker/.settings/org.eclipse.wst.jsdt.ui.superType.name | 1 - templates-broker/.settings/org.eclipse.wst.validation.prefs | 2 -- templates-broker/.settings/org.hibernate.eclipse.console.prefs | 3 --- templates-broker/.settings/org.jboss.ide.eclipse.as.core.prefs | 2 -- templates-broker/.tern-project | 1 - templates-broker/apidoc.json | 7 ------- templates-broker/pom.xml | 157 ------------------------------------------------------------------------------------------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/dao/DAO.java | 99 --------------------------------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/BusinessException.java | 16 ---------------- templates-broker/src/main/java/br/gov/ans/exceptions/ErrorMessage.java | 41 ----------------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/ResourceConflictException.java | 16 ---------------- templates-broker/src/main/java/br/gov/ans/exceptions/ResourceNotFoundException.java | 21 --------------------- templates-broker/src/main/java/br/gov/ans/exceptions/WrappedException.java | 16 ---------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/BusinessExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/EJBAccessExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/EJBTransactionRolledbackExceptionHandler.java | 40 ---------------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/ExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/ForbiddenExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/LoginExceptionHandler.java | 89 ----------------------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/NotAcceptableExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/NotAllowedExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/NotAuthorizedExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/NotFoundExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/ResourceConflictExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/ResourceNotFoundExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/WebApplicationExceptionHandler.java | 35 ----------------------------------- templates-broker/src/main/java/br/gov/ans/exceptions/handlers/WrappedExceptionHandler.java | 71 ----------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/factories/DAOFactory.java | 29 ----------------------------- templates-broker/src/main/java/br/gov/ans/factories/LoggerFactory.java | 18 ------------------ templates-broker/src/main/java/br/gov/ans/factories/PropertiesFactory.java | 38 -------------------------------------- templates-broker/src/main/java/br/gov/ans/factories/PropertiesFactoryLocal.java | 48 ------------------------------------------------ templates-broker/src/main/java/br/gov/ans/factories/PropertiesFactoryServer.java | 50 -------------------------------------------------- templates-broker/src/main/java/br/gov/ans/factories/qualifiers/Local.java | 15 --------------- templates-broker/src/main/java/br/gov/ans/factories/qualifiers/PropertiesInfo.java | 13 ------------- templates-broker/src/main/java/br/gov/ans/factories/qualifiers/Server.java | 15 --------------- templates-broker/src/main/java/br/gov/ans/filters/SessionInvalidateFilter.java | 34 ---------------------------------- templates-broker/src/main/java/br/gov/ans/templates/dao/ColaboradorDAO.java | 80 -------------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/templates/dao/TemplatesDAO.java | 97 ------------------------------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/templates/modelo/Colaborador.java | 97 ------------------------------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/templates/modelo/ColaboradorId.java | 58 ---------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/templates/modelo/Template.java | 178 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/templates/modelo/Versao.java | 132 ------------------------------------------------------------------------------------------------------------------------------------ templates-broker/src/main/java/br/gov/ans/templates/modelo/VersaoId.java | 74 -------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/templates/rest/ColaboradorResource.java | 17 ----------------- templates-broker/src/main/java/br/gov/ans/templates/rest/TemplateResource.java | 642 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ templates-broker/src/main/java/br/gov/ans/templates/rest/TemplatesService.java | 9 --------- templates-broker/src/main/java/br/gov/ans/templates/to/Template.java | 89 ----------------------------------------------------------------------------------------- templates-broker/src/main/java/br/gov/ans/templates/util/Constantes.java | 5 ----- templates-broker/src/main/java/br/gov/ans/templates/util/DAOUtils.java | 31 ------------------------------- templates-broker/src/main/java/br/gov/ans/templates/util/TemplatesUtils.java | 28 ---------------------------- templates-broker/src/main/java/br/gov/ans/utils/HttpHeadersUtil.java | 41 ----------------------------------------- templates-broker/src/main/java/br/gov/ans/utils/MessageUtils.java | 47 ----------------------------------------------- templates-broker/src/main/resources/META-INF/persistence.xml | 22 ---------------------- templates-broker/src/main/resources/messages.properties | 6 ------ templates-broker/src/main/webapp/WEB-INF/beans.xml | 5 ----- templates-broker/src/main/webapp/WEB-INF/jboss-deployment-structure.xml | 8 -------- templates-broker/src/main/webapp/WEB-INF/jboss-web.xml | 5 ----- templates-broker/src/main/webapp/WEB-INF/web.xml | 161 ----------------------------------------------------------------------------------------------------------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/api_data.js | 1074 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ templates-broker/src/main/webapp/api-docs/api_data.json | 1074 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ templates-broker/src/main/webapp/api-docs/api_project.js | 15 --------------- templates-broker/src/main/webapp/api-docs/api_project.json | 15 --------------- templates-broker/src/main/webapp/api-docs/css/style.css | 532 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/img/favicon.ico | Bin 894 -> 0 bytes templates-broker/src/main/webapp/api-docs/img/glyphicons-halflings-white.png | Bin 8777 -> 0 bytes templates-broker/src/main/webapp/api-docs/img/glyphicons-halflings.png | Bin 12799 -> 0 bytes templates-broker/src/main/webapp/api-docs/index.html | 658 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/locales/ca.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/de.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/es.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/fr.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/locale.js | 46 ---------------------------------------------- templates-broker/src/main/webapp/api-docs/locales/nl.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/pl.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/pt_br.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/ru.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/zh.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/locales/zh_cn.js | 25 ------------------------- templates-broker/src/main/webapp/api-docs/main.js | 705 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/utils/handlebars_helper.js | 327 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/utils/send_sample_request.js | 181 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/vendor/bootstrap-responsive.min.css | 9 --------- templates-broker/src/main/webapp/api-docs/vendor/bootstrap.min.css | 9 --------- templates-broker/src/main/webapp/api-docs/vendor/bootstrap.min.js | 6 ------ templates-broker/src/main/webapp/api-docs/vendor/diff_match_patch.min.js | 49 ------------------------------------------------- templates-broker/src/main/webapp/api-docs/vendor/handlebars.min.js | 28 ---------------------------- templates-broker/src/main/webapp/api-docs/vendor/jquery.min.js | 4 ---- templates-broker/src/main/webapp/api-docs/vendor/lodash.min.js | 61 ------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/vendor/path-to-regexp/LICENSE | 21 --------------------- templates-broker/src/main/webapp/api-docs/vendor/path-to-regexp/index.js | 204 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ templates-broker/src/main/webapp/api-docs/vendor/polyfill.js | 100 ---------------------------------------------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/vendor/prettify.css | 101 ----------------------------------------------------------------------------------------------------- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-apollo.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-basic.js | 3 --- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-clj.js | 18 ------------------ templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-css.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-dart.js | 3 --- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-erlang.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-go.js | 1 - templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-hs.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-lisp.js | 3 --- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-llvm.js | 1 - templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-lua.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-matlab.js | 6 ------ templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-ml.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-mumps.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-n.js | 4 ---- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-pascal.js | 3 --- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-proto.js | 1 - templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-r.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-rd.js | 1 - templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-scala.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-sql.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-tcl.js | 3 --- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-tex.js | 1 - templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-vb.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-vhdl.js | 3 --- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-wiki.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-xq.js | 3 --- templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-yaml.js | 2 -- templates-broker/src/main/webapp/api-docs/vendor/prettify/prettify.css | 1 - templates-broker/src/main/webapp/api-docs/vendor/prettify/prettify.js | 30 ------------------------------ templates-broker/src/main/webapp/api-docs/vendor/prettify/run_prettify.js | 34 ---------------------------------- templates-broker/src/main/webapp/api-docs/vendor/require.min.js | 36 ------------------------------------ templates-broker/src/main/webapp/api-docs/vendor/semver.min.js | 1 - templates-broker/src/main/webapp/api-docs/vendor/webfontloader.js | 18 ------------------ templates-broker/src/test/java/br/gov/ans/templates/teste/FunctionalTest.java | 42 ------------------------------------------ templates-broker/src/test/java/br/gov/ans/templates/teste/TemplatesTest.java | 62 -------------------------------------------------------------- templates-broker/src/test/resources/mail-default.mustache | 46 ---------------------------------------------- 278 files changed, 9060 insertions(+), 9060 deletions(-) create mode 100644 .classpath create mode 100644 .project create mode 100644 .settings/.jsdtscope create mode 100644 .settings/org.eclipse.core.resources.prefs create mode 100644 .settings/org.eclipse.jdt.core.prefs create mode 100644 .settings/org.eclipse.m2e.core.prefs create mode 100644 .settings/org.eclipse.wst.common.component create mode 100644 .settings/org.eclipse.wst.common.project.facet.core.prefs.xml create mode 100644 .settings/org.eclipse.wst.common.project.facet.core.xml create mode 100644 .settings/org.eclipse.wst.jsdt.ui.superType.container create mode 100644 .settings/org.eclipse.wst.jsdt.ui.superType.name create mode 100644 .settings/org.eclipse.wst.validation.prefs create mode 100644 .settings/org.hibernate.eclipse.console.prefs create mode 100644 .settings/org.jboss.ide.eclipse.as.core.prefs create mode 100644 .tern-project create mode 100644 apidoc.json create mode 100644 pom.xml create mode 100644 src/main/java/br/gov/ans/dao/DAO.java create mode 100644 src/main/java/br/gov/ans/exceptions/BusinessException.java create mode 100644 src/main/java/br/gov/ans/exceptions/ErrorMessage.java create mode 100644 src/main/java/br/gov/ans/exceptions/ResourceConflictException.java create mode 100644 src/main/java/br/gov/ans/exceptions/ResourceNotFoundException.java create mode 100644 src/main/java/br/gov/ans/exceptions/WrappedException.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/BusinessExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/EJBAccessExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/EJBTransactionRolledbackExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/ExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/ForbiddenExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/LoginExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/NotAcceptableExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/NotAllowedExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/NotAuthorizedExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/NotFoundExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/ResourceConflictExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/ResourceNotFoundExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/WebApplicationExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/exceptions/handlers/WrappedExceptionHandler.java create mode 100644 src/main/java/br/gov/ans/factories/DAOFactory.java create mode 100644 src/main/java/br/gov/ans/factories/LoggerFactory.java create mode 100644 src/main/java/br/gov/ans/factories/PropertiesFactory.java create mode 100644 src/main/java/br/gov/ans/factories/PropertiesFactoryLocal.java create mode 100644 src/main/java/br/gov/ans/factories/PropertiesFactoryServer.java create mode 100644 src/main/java/br/gov/ans/factories/qualifiers/Local.java create mode 100644 src/main/java/br/gov/ans/factories/qualifiers/PropertiesInfo.java create mode 100644 src/main/java/br/gov/ans/factories/qualifiers/Server.java create mode 100644 src/main/java/br/gov/ans/filters/SessionInvalidateFilter.java create mode 100644 src/main/java/br/gov/ans/templates/dao/ColaboradorDAO.java create mode 100644 src/main/java/br/gov/ans/templates/dao/TemplatesDAO.java create mode 100644 src/main/java/br/gov/ans/templates/modelo/Colaborador.java create mode 100644 src/main/java/br/gov/ans/templates/modelo/ColaboradorId.java create mode 100644 src/main/java/br/gov/ans/templates/modelo/Template.java create mode 100644 src/main/java/br/gov/ans/templates/modelo/Versao.java create mode 100644 src/main/java/br/gov/ans/templates/modelo/VersaoId.java create mode 100644 src/main/java/br/gov/ans/templates/rest/ColaboradorResource.java create mode 100644 src/main/java/br/gov/ans/templates/rest/TemplateResource.java create mode 100644 src/main/java/br/gov/ans/templates/rest/TemplatesService.java create mode 100644 src/main/java/br/gov/ans/templates/to/Template.java create mode 100644 src/main/java/br/gov/ans/templates/util/Constantes.java create mode 100644 src/main/java/br/gov/ans/templates/util/DAOUtils.java create mode 100644 src/main/java/br/gov/ans/templates/util/TemplatesUtils.java create mode 100644 src/main/java/br/gov/ans/utils/HttpHeadersUtil.java create mode 100644 src/main/java/br/gov/ans/utils/MessageUtils.java create mode 100644 src/main/resources/META-INF/persistence.xml create mode 100644 src/main/resources/messages.properties create mode 100644 src/main/webapp/WEB-INF/beans.xml create mode 100644 src/main/webapp/WEB-INF/jboss-deployment-structure.xml create mode 100644 src/main/webapp/WEB-INF/jboss-web.xml create mode 100644 src/main/webapp/WEB-INF/web.xml create mode 100644 src/main/webapp/api-docs/api_data.js create mode 100644 src/main/webapp/api-docs/api_data.json create mode 100644 src/main/webapp/api-docs/api_project.js create mode 100644 src/main/webapp/api-docs/api_project.json create mode 100644 src/main/webapp/api-docs/css/style.css create mode 100644 src/main/webapp/api-docs/img/favicon.ico create mode 100644 src/main/webapp/api-docs/img/glyphicons-halflings-white.png create mode 100644 src/main/webapp/api-docs/img/glyphicons-halflings.png create mode 100644 src/main/webapp/api-docs/index.html create mode 100644 src/main/webapp/api-docs/locales/ca.js create mode 100644 src/main/webapp/api-docs/locales/de.js create mode 100644 src/main/webapp/api-docs/locales/es.js create mode 100644 src/main/webapp/api-docs/locales/fr.js create mode 100644 src/main/webapp/api-docs/locales/locale.js create mode 100644 src/main/webapp/api-docs/locales/nl.js create mode 100644 src/main/webapp/api-docs/locales/pl.js create mode 100644 src/main/webapp/api-docs/locales/pt_br.js create mode 100644 src/main/webapp/api-docs/locales/ru.js create mode 100644 src/main/webapp/api-docs/locales/zh.js create mode 100644 src/main/webapp/api-docs/locales/zh_cn.js create mode 100644 src/main/webapp/api-docs/main.js create mode 100644 src/main/webapp/api-docs/utils/handlebars_helper.js create mode 100644 src/main/webapp/api-docs/utils/send_sample_request.js create mode 100644 src/main/webapp/api-docs/vendor/bootstrap-responsive.min.css create mode 100644 src/main/webapp/api-docs/vendor/bootstrap.min.css create mode 100644 src/main/webapp/api-docs/vendor/bootstrap.min.js create mode 100644 src/main/webapp/api-docs/vendor/diff_match_patch.min.js create mode 100644 src/main/webapp/api-docs/vendor/handlebars.min.js create mode 100644 src/main/webapp/api-docs/vendor/jquery.min.js create mode 100644 src/main/webapp/api-docs/vendor/lodash.min.js create mode 100644 src/main/webapp/api-docs/vendor/path-to-regexp/LICENSE create mode 100644 src/main/webapp/api-docs/vendor/path-to-regexp/index.js create mode 100644 src/main/webapp/api-docs/vendor/polyfill.js create mode 100644 src/main/webapp/api-docs/vendor/prettify.css create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-apollo.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-basic.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-clj.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-css.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-dart.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-erlang.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-go.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-hs.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-lisp.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-llvm.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-lua.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-matlab.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-ml.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-mumps.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-n.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-pascal.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-proto.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-r.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-rd.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-scala.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-sql.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-tcl.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-tex.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-vb.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-vhdl.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-wiki.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-xq.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/lang-yaml.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/prettify.css create mode 100644 src/main/webapp/api-docs/vendor/prettify/prettify.js create mode 100644 src/main/webapp/api-docs/vendor/prettify/run_prettify.js create mode 100644 src/main/webapp/api-docs/vendor/require.min.js create mode 100644 src/main/webapp/api-docs/vendor/semver.min.js create mode 100644 src/main/webapp/api-docs/vendor/webfontloader.js create mode 100644 src/test/java/br/gov/ans/templates/teste/FunctionalTest.java create mode 100644 src/test/java/br/gov/ans/templates/teste/TemplatesTest.java create mode 100644 src/test/resources/mail-default.mustache delete mode 100644 templates-broker/.classpath delete mode 100644 templates-broker/.project delete mode 100644 templates-broker/.settings/.jsdtscope delete mode 100644 templates-broker/.settings/org.eclipse.core.resources.prefs delete mode 100644 templates-broker/.settings/org.eclipse.jdt.core.prefs delete mode 100644 templates-broker/.settings/org.eclipse.m2e.core.prefs delete mode 100644 templates-broker/.settings/org.eclipse.wst.common.component delete mode 100644 templates-broker/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml delete mode 100644 templates-broker/.settings/org.eclipse.wst.common.project.facet.core.xml delete mode 100644 templates-broker/.settings/org.eclipse.wst.jsdt.ui.superType.container delete mode 100644 templates-broker/.settings/org.eclipse.wst.jsdt.ui.superType.name delete mode 100644 templates-broker/.settings/org.eclipse.wst.validation.prefs delete mode 100644 templates-broker/.settings/org.hibernate.eclipse.console.prefs delete mode 100644 templates-broker/.settings/org.jboss.ide.eclipse.as.core.prefs delete mode 100644 templates-broker/.tern-project delete mode 100644 templates-broker/apidoc.json delete mode 100644 templates-broker/pom.xml delete mode 100644 templates-broker/src/main/java/br/gov/ans/dao/DAO.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/BusinessException.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/ErrorMessage.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/ResourceConflictException.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/ResourceNotFoundException.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/WrappedException.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/BusinessExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/EJBAccessExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/EJBTransactionRolledbackExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/ExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/ForbiddenExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/LoginExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/NotAcceptableExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/NotAllowedExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/NotAuthorizedExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/NotFoundExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/ResourceConflictExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/ResourceNotFoundExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/WebApplicationExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/exceptions/handlers/WrappedExceptionHandler.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/factories/DAOFactory.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/factories/LoggerFactory.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/factories/PropertiesFactory.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/factories/PropertiesFactoryLocal.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/factories/PropertiesFactoryServer.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/factories/qualifiers/Local.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/factories/qualifiers/PropertiesInfo.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/factories/qualifiers/Server.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/filters/SessionInvalidateFilter.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/dao/ColaboradorDAO.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/dao/TemplatesDAO.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/modelo/Colaborador.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/modelo/ColaboradorId.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/modelo/Template.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/modelo/Versao.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/modelo/VersaoId.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/rest/ColaboradorResource.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/rest/TemplateResource.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/rest/TemplatesService.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/to/Template.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/util/Constantes.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/util/DAOUtils.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/templates/util/TemplatesUtils.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/utils/HttpHeadersUtil.java delete mode 100644 templates-broker/src/main/java/br/gov/ans/utils/MessageUtils.java delete mode 100644 templates-broker/src/main/resources/META-INF/persistence.xml delete mode 100644 templates-broker/src/main/resources/messages.properties delete mode 100644 templates-broker/src/main/webapp/WEB-INF/beans.xml delete mode 100644 templates-broker/src/main/webapp/WEB-INF/jboss-deployment-structure.xml delete mode 100644 templates-broker/src/main/webapp/WEB-INF/jboss-web.xml delete mode 100644 templates-broker/src/main/webapp/WEB-INF/web.xml delete mode 100644 templates-broker/src/main/webapp/api-docs/api_data.js delete mode 100644 templates-broker/src/main/webapp/api-docs/api_data.json delete mode 100644 templates-broker/src/main/webapp/api-docs/api_project.js delete mode 100644 templates-broker/src/main/webapp/api-docs/api_project.json delete mode 100644 templates-broker/src/main/webapp/api-docs/css/style.css delete mode 100644 templates-broker/src/main/webapp/api-docs/img/favicon.ico delete mode 100644 templates-broker/src/main/webapp/api-docs/img/glyphicons-halflings-white.png delete mode 100644 templates-broker/src/main/webapp/api-docs/img/glyphicons-halflings.png delete mode 100644 templates-broker/src/main/webapp/api-docs/index.html delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/ca.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/de.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/es.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/fr.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/locale.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/nl.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/pl.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/pt_br.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/ru.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/zh.js delete mode 100644 templates-broker/src/main/webapp/api-docs/locales/zh_cn.js delete mode 100644 templates-broker/src/main/webapp/api-docs/main.js delete mode 100644 templates-broker/src/main/webapp/api-docs/utils/handlebars_helper.js delete mode 100644 templates-broker/src/main/webapp/api-docs/utils/send_sample_request.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/bootstrap-responsive.min.css delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/bootstrap.min.css delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/bootstrap.min.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/diff_match_patch.min.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/handlebars.min.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/jquery.min.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/lodash.min.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/path-to-regexp/LICENSE delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/path-to-regexp/index.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/polyfill.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify.css delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-apollo.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-basic.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-clj.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-css.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-dart.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-erlang.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-go.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-hs.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-lisp.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-llvm.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-lua.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-matlab.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-ml.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-mumps.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-n.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-pascal.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-proto.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-r.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-rd.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-scala.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-sql.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-tcl.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-tex.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-vb.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-vhdl.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-wiki.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-xq.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/lang-yaml.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/prettify.css delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/prettify.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/prettify/run_prettify.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/require.min.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/semver.min.js delete mode 100644 templates-broker/src/main/webapp/api-docs/vendor/webfontloader.js delete mode 100644 templates-broker/src/test/java/br/gov/ans/templates/teste/FunctionalTest.java delete mode 100644 templates-broker/src/test/java/br/gov/ans/templates/teste/TemplatesTest.java delete mode 100644 templates-broker/src/test/resources/mail-default.mustache diff --git a/.classpath b/.classpath new file mode 100644 index 0000000..81c8c83 --- /dev/null +++ b/.classpath @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 0000000..1095ebd --- /dev/null +++ b/.project @@ -0,0 +1,72 @@ + + + templates-broker + + + + + + tern.eclipse.ide.core.ternBuilder + + + + + org.eclipse.wst.jsdt.core.javascriptValidator + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.wst.common.project.facet.core.builder + + + + + org.jboss.tools.jst.web.kb.kbbuilder + + + + + org.hibernate.eclipse.console.hibernateBuilder + + + + + org.jboss.tools.cdi.core.cdibuilder + + + + + org.jboss.tools.ws.jaxrs.metamodelBuilder + + + + + org.eclipse.wst.validation.validationbuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jem.workbench.JavaEMFNature + org.eclipse.wst.common.modulecore.ModuleCoreNature + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + org.eclipse.wst.common.project.facet.core.nature + org.eclipse.wst.jsdt.core.jsNature + org.hibernate.eclipse.console.hibernateNature + org.jboss.tools.jst.web.kb.kbnature + org.jboss.tools.cdi.core.cdinature + org.jboss.tools.jsf.jsfnature + org.jboss.tools.ws.jaxrs.nature + + diff --git a/.settings/.jsdtscope b/.settings/.jsdtscope new file mode 100644 index 0000000..585c967 --- /dev/null +++ b/.settings/.jsdtscope @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..2f47a48 --- /dev/null +++ b/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 +encoding/apidoc.json=UTF-8 diff --git a/.settings/org.eclipse.jdt.core.prefs b/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..082de6c --- /dev/null +++ b/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,14 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning +org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/.settings/org.eclipse.m2e.core.prefs b/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..14b697b --- /dev/null +++ b/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/.settings/org.eclipse.wst.common.component b/.settings/org.eclipse.wst.common.component new file mode 100644 index 0000000..e96ed1a --- /dev/null +++ b/.settings/org.eclipse.wst.common.component @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml b/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml new file mode 100644 index 0000000..bd67822 --- /dev/null +++ b/.settings/org.eclipse.wst.common.project.facet.core.prefs.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + diff --git a/.settings/org.eclipse.wst.common.project.facet.core.xml b/.settings/org.eclipse.wst.common.project.facet.core.xml new file mode 100644 index 0000000..725fe3d --- /dev/null +++ b/.settings/org.eclipse.wst.common.project.facet.core.xml @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/.settings/org.eclipse.wst.jsdt.ui.superType.container b/.settings/org.eclipse.wst.jsdt.ui.superType.container new file mode 100644 index 0000000..3bd5d0a --- /dev/null +++ b/.settings/org.eclipse.wst.jsdt.ui.superType.container @@ -0,0 +1 @@ +org.eclipse.wst.jsdt.launching.baseBrowserLibrary \ No newline at end of file diff --git a/.settings/org.eclipse.wst.jsdt.ui.superType.name b/.settings/org.eclipse.wst.jsdt.ui.superType.name new file mode 100644 index 0000000..05bd71b --- /dev/null +++ b/.settings/org.eclipse.wst.jsdt.ui.superType.name @@ -0,0 +1 @@ +Window \ No newline at end of file diff --git a/.settings/org.eclipse.wst.validation.prefs b/.settings/org.eclipse.wst.validation.prefs new file mode 100644 index 0000000..6f1cba6 --- /dev/null +++ b/.settings/org.eclipse.wst.validation.prefs @@ -0,0 +1,2 @@ +disabled=06target +eclipse.preferences.version=1 diff --git a/.settings/org.hibernate.eclipse.console.prefs b/.settings/org.hibernate.eclipse.console.prefs new file mode 100644 index 0000000..054a9c0 --- /dev/null +++ b/.settings/org.hibernate.eclipse.console.prefs @@ -0,0 +1,3 @@ +default.configuration=gerenciamento-modelos-eletronicos +eclipse.preferences.version=1 +hibernate3.enabled=true diff --git a/.settings/org.jboss.ide.eclipse.as.core.prefs b/.settings/org.jboss.ide.eclipse.as.core.prefs new file mode 100644 index 0000000..a64acc9 --- /dev/null +++ b/.settings/org.jboss.ide.eclipse.as.core.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.jboss.ide.eclipse.as.core.singledeployable.deployableList= diff --git a/.tern-project b/.tern-project new file mode 100644 index 0000000..b6f48dd --- /dev/null +++ b/.tern-project @@ -0,0 +1 @@ +{"ide":{},"libs":["ecma5","browser"],"plugins":{"guess-types":{},"angular":{}}} \ No newline at end of file diff --git a/apidoc.json b/apidoc.json new file mode 100644 index 0000000..a79affd --- /dev/null +++ b/apidoc.json @@ -0,0 +1,7 @@ +{ + "name": "templates-broker", + "version": "1.0.0", + "description": "API de manipulação de templates", + "title": "Documentação - templates-broker", + "url":"http:///templates-broker/service" +} \ No newline at end of file diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..0c07bff --- /dev/null +++ b/pom.xml @@ -0,0 +1,157 @@ + + 4.0.0 + br.gov.ans + templates-broker + 1.0 + war + templates-broker + Sistema de gerenciamento de templates. + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + 1.8 + 1.8 + + + + + + + + + + org.hibernate + hibernate-core + 5.2.6.Final + + + + org.hibernate.javax.persistence + hibernate-jpa-2.1-api + 1.0.0.Final-redhat-1 + + + + org.jboss.spec.javax.transaction + jboss-transaction-api_1.2_spec + 1.0.0.Final + + + + + org.jboss.weld + weld-core + 2.2.15.Final + + + + + org.jboss.resteasy + resteasy-jaxrs + 3.1.0.Final + provided + + + + org.jboss.resteasy + resteasy-jackson-provider + 3.1.0.Final + + + + org.jboss.resteasy + resteasy-jaxb-provider + 3.1.0.Final + + + + org.jboss.resteasy + resteasy-wadl + 3.1.0.Final + + + + org.jboss.resteasy + resteasy-hibernatevalidator-provider + 3.0.19.Final + provided + + + + + com.github.hazendaz + htmlcompressor + 1.6.2 + + + + + org.jboss.ejb3 + jboss-ejb3-api + 3.1.0 + provided + + + + + org.apache.commons + commons-lang3 + 3.4 + provided + + + + + com.google.code.gson + gson + 2.6.2 + + + + + javax.servlet + javax.servlet-api + 3.0.1 + + + + + io.swagger + swagger-annotations + 1.5.12 + + + + io.swagger + swagger-jaxrs + 1.5.12 + + + + + junit + junit + 4.12 + test + + + org.hamcrest + hamcrest-all + 1.3 + test + + + com.jayway.restassured + rest-assured + 2.9.0 + test + + + \ No newline at end of file diff --git a/src/main/java/br/gov/ans/dao/DAO.java b/src/main/java/br/gov/ans/dao/DAO.java new file mode 100644 index 0000000..8941f53 --- /dev/null +++ b/src/main/java/br/gov/ans/dao/DAO.java @@ -0,0 +1,99 @@ +package br.gov.ans.dao; + +import java.io.Serializable; +import java.util.List; +import java.util.Map; + +import javax.persistence.EntityManager; +import javax.persistence.Query; +import javax.persistence.criteria.CriteriaQuery; +import javax.persistence.criteria.Root; +import javax.transaction.Transactional; + +public class DAO implements Serializable{ + + private static final long serialVersionUID = 1L; + + private EntityManager em; + + + protected final Class classe; + + public DAO(Class classe, EntityManager em){ + this.classe = classe; + this.em = em; + } + + @Transactional + public void persist(T t){ + em.persist(t); + em.flush(); + } + + @Transactional + public void merge(T t){ + em.merge(t); + } + + @Transactional + public void remove(T t) { + em.remove(em.merge(t)); + } + + @Transactional + @SuppressWarnings({ "unchecked", "rawtypes" }) + public Long count() { + CriteriaQuery criteria = em.getCriteriaBuilder().createQuery(); + Root root = criteria.from(classe); + + criteria.select(em.getCriteriaBuilder().count(root)); + javax.persistence.Query q = em.createQuery(criteria); + + return (Long) q.getSingleResult(); + } + + @Transactional + @SuppressWarnings({ "unchecked", "rawtypes" }) + public List executeNamedQuery(String queryName, Map params){ + Query query = em.createNamedQuery(queryName, classe); + + if ((params != null) && (!params.isEmpty())) { + for (Map.Entry entry : params.entrySet()) { + query.setParameter((String) entry.getKey(),entry.getValue()); + } + } + + return query.getResultList(); + } + + @Transactional + @SuppressWarnings({ "rawtypes" }) + public Query createNamedQuery(String queryName, Map params){ + Query query = em.createNamedQuery(queryName, classe); + + if ((params != null) && (!params.isEmpty())) { + for (Map.Entry entry : params.entrySet()) { + query.setParameter((String) entry.getKey(),entry.getValue()); + } + } + + return query; + } + + + @Transactional + @SuppressWarnings("unchecked") + public List getPaginatedResultList(int first, int pageSize) { + Query query = em.createQuery("from " + classe.getName()); + + if (pageSize >= 0){ + query.setMaxResults(pageSize); + } + if (first >= 0){ + query.setFirstResult(first); + } + + return query.getResultList(); + } + +} diff --git a/src/main/java/br/gov/ans/exceptions/BusinessException.java b/src/main/java/br/gov/ans/exceptions/BusinessException.java new file mode 100644 index 0000000..3e4b73e --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/BusinessException.java @@ -0,0 +1,16 @@ +package br.gov.ans.exceptions; + +public class BusinessException extends Exception{ + + private static final long serialVersionUID = 1L; + + private String message; + + public BusinessException(String message){ + this.message = message; + } + + public String getMessage() { + return message; + } +} diff --git a/src/main/java/br/gov/ans/exceptions/ErrorMessage.java b/src/main/java/br/gov/ans/exceptions/ErrorMessage.java new file mode 100644 index 0000000..587b157 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/ErrorMessage.java @@ -0,0 +1,41 @@ +package br.gov.ans.exceptions; + +import javax.xml.bind.annotation.XmlRootElement; + +@XmlRootElement +public class ErrorMessage { + private String error; + private String code; + + public ErrorMessage(){} + + public ErrorMessage(String error) { + this.error = error; + } + + public ErrorMessage(String error, String code) { + this.error = error; + this.code = code; + } + + public ErrorMessage(String error, int code) { + this.error = error; + this.code = String.valueOf(code); + } + + public String getError() { + return error; + } + + public void setError(String error){ + this.error = error; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } +} diff --git a/src/main/java/br/gov/ans/exceptions/ResourceConflictException.java b/src/main/java/br/gov/ans/exceptions/ResourceConflictException.java new file mode 100644 index 0000000..dbefa1c --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/ResourceConflictException.java @@ -0,0 +1,16 @@ +package br.gov.ans.exceptions; + +public class ResourceConflictException extends Exception{ + + private static final long serialVersionUID = 1L; + + private String message; + + public ResourceConflictException(String message){ + this.message = message; + } + + public String getMessage() { + return message; + } +} diff --git a/src/main/java/br/gov/ans/exceptions/ResourceNotFoundException.java b/src/main/java/br/gov/ans/exceptions/ResourceNotFoundException.java new file mode 100644 index 0000000..f4433db --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/ResourceNotFoundException.java @@ -0,0 +1,21 @@ +package br.gov.ans.exceptions; + +public class ResourceNotFoundException extends Exception { + + private static final long serialVersionUID = 1L; + + private String message; + + public ResourceNotFoundException(String message) { + this.message = message; + } + + public String getMessage() { + return message; + } + + public void setMessage(String message) { + this.message = message; + } + +} diff --git a/src/main/java/br/gov/ans/exceptions/WrappedException.java b/src/main/java/br/gov/ans/exceptions/WrappedException.java new file mode 100644 index 0000000..7808297 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/WrappedException.java @@ -0,0 +1,16 @@ +package br.gov.ans.exceptions; + +public class WrappedException extends Exception{ + + private static final long serialVersionUID = 1L; + + private Exception ex; + + public WrappedException(Exception ex){ + this.ex = ex; + } + + public Exception getEx() { + return ex; + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/BusinessExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/BusinessExceptionHandler.java new file mode 100644 index 0000000..272c868 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/BusinessExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.BusinessException; +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class BusinessExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(BusinessException ex) { + logger.error(ex, ex); + + return Response.status(Status.BAD_REQUEST) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.BAD_REQUEST.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/EJBAccessExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/EJBAccessExceptionHandler.java new file mode 100644 index 0000000..9e01124 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/EJBAccessExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.ejb.EJBAccessException; +import javax.inject.Inject; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class EJBAccessExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(EJBAccessException ex) { + logger.error(ex, ex); + + return Response.status(Status.UNAUTHORIZED) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.UNAUTHORIZED.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/EJBTransactionRolledbackExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/EJBTransactionRolledbackExceptionHandler.java new file mode 100644 index 0000000..24fcb3f --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/EJBTransactionRolledbackExceptionHandler.java @@ -0,0 +1,40 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.ejb.EJBTransactionRolledbackException; +import javax.inject.Inject; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; +import br.gov.ans.utils.MessageUtils; + +@Provider +public class EJBTransactionRolledbackExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + @Inject + private MessageUtils messages; + + public Response toResponse(EJBTransactionRolledbackException ex) { + logger.error(ex, ex); + + return Response.status(Status.INTERNAL_SERVER_ERROR) + .entity(new ErrorMessage(messages.getMessage("erro.inesperado"),String.valueOf(Status.INTERNAL_SERVER_ERROR.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } + +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/ExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/ExceptionHandler.java new file mode 100644 index 0000000..360c4f6 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/ExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class ExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(Exception ex) { + logger.error(ex, ex); + + return Response.status(Status.INTERNAL_SERVER_ERROR) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.INTERNAL_SERVER_ERROR.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } + +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/ForbiddenExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/ForbiddenExceptionHandler.java new file mode 100644 index 0000000..b6944ee --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/ForbiddenExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.ForbiddenException; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class ForbiddenExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(ForbiddenException ex) { + logger.error(ex, ex); + + return Response.status(Status.FORBIDDEN) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.FORBIDDEN.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/LoginExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/LoginExceptionHandler.java new file mode 100644 index 0000000..52eeb43 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/LoginExceptionHandler.java @@ -0,0 +1,89 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import java.io.IOException; +import java.io.PrintWriter; +import java.io.StringWriter; + +import javax.inject.Inject; +import javax.servlet.ServletException; +import javax.servlet.annotation.WebServlet; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.core.MediaType; +import javax.ws.rs.core.Response.Status; +import javax.xml.bind.JAXB; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +import com.google.gson.Gson; + +public class LoginExceptionHandler extends HttpServlet{ + + private static final long serialVersionUID = 1L; + + @Inject + private Logger logger; + + @Override + protected void doPost(HttpServletRequest req, HttpServletResponse resp) + throws ServletException, IOException { + + String acceptType = getAcceptType(req); + + resp.setContentType(acceptType); + resp.setCharacterEncoding("utf-8"); + + CODE code = CODE.valueOf("_"+req.getParameter("code")); + + ErrorMessage error = new ErrorMessage(code.message, code.status.getStatusCode()); + + logger.error(error.getError()); + + PrintWriter out = resp.getWriter(); + + if(acceptType.equals(MediaType.APPLICATION_JSON)){ + out.write(new Gson().toJson(error)); + }else{ + StringWriter sw = new StringWriter(); + JAXB.marshal(error, sw); + + out.write(sw.toString()); + } + } + + @Override + protected void doGet(HttpServletRequest req, HttpServletResponse resp) + throws ServletException, IOException { + doPost(req, resp); + } + + @Override + protected void doPut(HttpServletRequest req, HttpServletResponse resp) + throws ServletException, IOException { + doPost(req, resp); + } + + @Override + protected void doDelete(HttpServletRequest req, HttpServletResponse resp) + throws ServletException, IOException { + doPost(req, resp); + } + + private enum CODE{ + _401(Status.UNAUTHORIZED, "Cliente não autenticado."), + _403(Status.FORBIDDEN, "Cliente não autorizado."); + + Status status; + String message; + + private CODE(Status restStatus, String message) { + this.status = restStatus; + this.message = message; + } + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/NotAcceptableExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/NotAcceptableExceptionHandler.java new file mode 100644 index 0000000..a977de3 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/NotAcceptableExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.NotAcceptableException; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class NotAcceptableExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(NotAcceptableException ex) { + logger.error(ex, ex); + + return Response.status(Status.NOT_ACCEPTABLE) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.NOT_ACCEPTABLE.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/NotAllowedExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/NotAllowedExceptionHandler.java new file mode 100644 index 0000000..e2cdad9 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/NotAllowedExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.NotAllowedException; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class NotAllowedExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(NotAllowedException ex) { + logger.error(ex, ex); + + return Response.status(Status.METHOD_NOT_ALLOWED) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.METHOD_NOT_ALLOWED.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/NotAuthorizedExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/NotAuthorizedExceptionHandler.java new file mode 100644 index 0000000..c09a91b --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/NotAuthorizedExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.NotAuthorizedException; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class NotAuthorizedExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(NotAuthorizedException ex) { + logger.error(ex, ex); + + return Response.status(Status.UNAUTHORIZED) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.UNAUTHORIZED.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/NotFoundExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/NotFoundExceptionHandler.java new file mode 100644 index 0000000..a4f5ffe --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/NotFoundExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.NotFoundException; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class NotFoundExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(NotFoundException ex) { + logger.error(ex, ex); + + return Response.status(Status.NOT_FOUND) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.NOT_FOUND.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/ResourceConflictExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/ResourceConflictExceptionHandler.java new file mode 100644 index 0000000..0e36394 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/ResourceConflictExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; +import br.gov.ans.exceptions.ResourceConflictException; + +@Provider +public class ResourceConflictExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(ResourceConflictException ex) { + logger.error(ex, ex); + + return Response.status(Status.CONFLICT) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.CONFLICT.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/ResourceNotFoundExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/ResourceNotFoundExceptionHandler.java new file mode 100644 index 0000000..8605b94 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/ResourceNotFoundExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; +import br.gov.ans.exceptions.ResourceNotFoundException; + +@Provider +public class ResourceNotFoundExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(ResourceNotFoundException ex) { + logger.error(ex, ex); + + return Response.status(Status.NOT_FOUND) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.NOT_FOUND.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/WebApplicationExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/WebApplicationExceptionHandler.java new file mode 100644 index 0000000..03235ef --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/WebApplicationExceptionHandler.java @@ -0,0 +1,35 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import javax.inject.Inject; +import javax.ws.rs.WebApplicationException; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.ErrorMessage; + +@Provider +public class WebApplicationExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Context + private HttpHeaders headers; + + public Response toResponse(WebApplicationException ex) { + logger.error(ex, ex); + + return Response.status(Status.INTERNAL_SERVER_ERROR) + .entity(new ErrorMessage(ex.getMessage(),String.valueOf(Status.INTERNAL_SERVER_ERROR.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } +} diff --git a/src/main/java/br/gov/ans/exceptions/handlers/WrappedExceptionHandler.java b/src/main/java/br/gov/ans/exceptions/handlers/WrappedExceptionHandler.java new file mode 100644 index 0000000..109d413 --- /dev/null +++ b/src/main/java/br/gov/ans/exceptions/handlers/WrappedExceptionHandler.java @@ -0,0 +1,71 @@ +package br.gov.ans.exceptions.handlers; + +import static br.gov.ans.utils.HttpHeadersUtil.getAcceptType; + +import java.util.Set; + +import javax.inject.Inject; +import javax.validation.ConstraintViolation; +import javax.validation.ConstraintViolationException; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.HttpHeaders; +import javax.ws.rs.core.Response; +import javax.ws.rs.core.Response.Status; +import javax.ws.rs.ext.ExceptionMapper; +import javax.ws.rs.ext.Provider; + +import org.apache.commons.lang3.StringUtils; +import org.jboss.logging.Logger; + +import br.gov.ans.exceptions.BusinessException; +import br.gov.ans.exceptions.ErrorMessage; +import br.gov.ans.exceptions.WrappedException; +import br.gov.ans.utils.MessageUtils; + +@Provider +public class WrappedExceptionHandler implements ExceptionMapper{ + + @Inject + private Logger logger; + + @Inject + private MessageUtils messages; + + @Context + private HttpHeaders headers; + + public Response toResponse(WrappedException ex) { + logger.error(ex.getEx(), ex.getEx()); + + Status status = Status.INTERNAL_SERVER_ERROR; + String message = messages.getMessage("erro.interno"); + + if(ex.getEx() instanceof BusinessException){ + status = Status.BAD_REQUEST; + message = ex.getEx().getMessage(); + } + + if(ex.getEx() instanceof ConstraintViolationException){ + status = Status.BAD_REQUEST; + message = getViolacoes((ConstraintViolationException) ex.getEx()); + } + + return Response.status(status) + .entity(new ErrorMessage(message,String.valueOf(status.getStatusCode()))) + .type(getAcceptType(headers)) + .build(); + } + + public String getViolacoes(ConstraintViolationException ex){ + StringBuilder string = new StringBuilder(messages.getMessage("erro.validar")); + Set> violations = ex.getConstraintViolations(); + + for(ConstraintViolation violation : violations){ + string.append(violation.getPropertyPath()+": "); + string.append(violation.getMessage()+", "); + } + + return StringUtils.left(string.toString(), (string.length() - 2)); + } + +} diff --git a/src/main/java/br/gov/ans/factories/DAOFactory.java b/src/main/java/br/gov/ans/factories/DAOFactory.java new file mode 100644 index 0000000..5b69a83 --- /dev/null +++ b/src/main/java/br/gov/ans/factories/DAOFactory.java @@ -0,0 +1,29 @@ +package br.gov.ans.factories; + +import java.io.Serializable; +import java.lang.reflect.ParameterizedType; + +import javax.enterprise.inject.Produces; +import javax.enterprise.inject.spi.InjectionPoint; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.persistence.PersistenceContextType; + +import br.gov.ans.dao.DAO; + +public class DAOFactory implements Serializable{ + + private static final long serialVersionUID = 1L; + + @PersistenceContext(unitName = "templates_broker_pu", type = PersistenceContextType.EXTENDED) + private EntityManager em; + + @SuppressWarnings({ "unchecked", "rawtypes" }) + @Produces + public DAO createDAO(InjectionPoint injectionPoint) { + ParameterizedType type = (ParameterizedType) injectionPoint.getType(); + Class classe = (Class) type.getActualTypeArguments()[0]; + + return new DAO(classe, em); + } +} diff --git a/src/main/java/br/gov/ans/factories/LoggerFactory.java b/src/main/java/br/gov/ans/factories/LoggerFactory.java new file mode 100644 index 0000000..8d1027f --- /dev/null +++ b/src/main/java/br/gov/ans/factories/LoggerFactory.java @@ -0,0 +1,18 @@ +package br.gov.ans.factories; + +import java.io.Serializable; + +import javax.enterprise.inject.Produces; +import javax.enterprise.inject.spi.InjectionPoint; + +import org.jboss.logging.Logger; + +public class LoggerFactory implements Serializable { + + private static final long serialVersionUID = 1L; + + @Produces + public Logger produceLogger(InjectionPoint injectionPoint){ + return Logger.getLogger(injectionPoint.getMember().getDeclaringClass().getName()); + } +} diff --git a/src/main/java/br/gov/ans/factories/PropertiesFactory.java b/src/main/java/br/gov/ans/factories/PropertiesFactory.java new file mode 100644 index 0000000..6c3d542 --- /dev/null +++ b/src/main/java/br/gov/ans/factories/PropertiesFactory.java @@ -0,0 +1,38 @@ +package br.gov.ans.factories; + +import java.io.IOException; +import java.util.Properties; + +import javax.enterprise.inject.spi.Annotated; +import javax.enterprise.inject.spi.InjectionPoint; + +import org.apache.commons.lang3.StringUtils; + +import br.gov.ans.factories.qualifiers.PropertiesInfo; + + +public abstract class PropertiesFactory { + + protected Properties produceProperties(InjectionPoint injectionPoint) throws IOException{ + Annotated annotated = injectionPoint.getAnnotated(); + PropertiesInfo info = annotated.getAnnotation(PropertiesInfo.class); + + return getProperties(info.file()); + } + + protected String produceProperty(InjectionPoint injectionPoint) throws IOException{ + Annotated annotated = injectionPoint.getAnnotated(); + PropertiesInfo info = annotated.getAnnotation(PropertiesInfo.class); + + if(StringUtils.isBlank(info.key())){ + return null; + } + + Properties props = getProperties(info.file()); + + return props.getProperty(info.key()); + } + + abstract Properties getProperties(String file) throws IOException; + +} \ No newline at end of file diff --git a/src/main/java/br/gov/ans/factories/PropertiesFactoryLocal.java b/src/main/java/br/gov/ans/factories/PropertiesFactoryLocal.java new file mode 100644 index 0000000..a5f2719 --- /dev/null +++ b/src/main/java/br/gov/ans/factories/PropertiesFactoryLocal.java @@ -0,0 +1,48 @@ +package br.gov.ans.factories; + +import java.io.IOException; +import java.io.Serializable; +import java.util.Properties; + +import javax.enterprise.context.ApplicationScoped; +import javax.enterprise.inject.Default; +import javax.enterprise.inject.Produces; +import javax.enterprise.inject.spi.InjectionPoint; + +import br.gov.ans.factories.qualifiers.Local; + + + +/** + * Obtém propriedades locais. + * + */ +@ApplicationScoped +public class PropertiesFactoryLocal extends PropertiesFactory implements Serializable { + + private static final long serialVersionUID = 1L; + + @Produces + @Local @Default + @Override + public Properties produceProperties(InjectionPoint injectionPoint) throws IOException{ + return super.produceProperties(injectionPoint); + } + + @Produces + @Local @Default + @Override + public String produceProperty(InjectionPoint injectionPoint) throws IOException{ + return super.produceProperty(injectionPoint); + } + + @Override + protected Properties getProperties(String file) throws IOException{ + Properties props = new Properties(); + + props.load(PropertiesFactoryLocal.class.getClassLoader().getResourceAsStream(file)); + + return props; + } + +} \ No newline at end of file diff --git a/src/main/java/br/gov/ans/factories/PropertiesFactoryServer.java b/src/main/java/br/gov/ans/factories/PropertiesFactoryServer.java new file mode 100644 index 0000000..7a92007 --- /dev/null +++ b/src/main/java/br/gov/ans/factories/PropertiesFactoryServer.java @@ -0,0 +1,50 @@ +package br.gov.ans.factories; + +import java.io.FileInputStream; +import java.io.IOException; +import java.io.Serializable; +import java.util.Properties; + +import javax.enterprise.context.ApplicationScoped; +import javax.enterprise.inject.Produces; +import javax.enterprise.inject.spi.InjectionPoint; + +import br.gov.ans.factories.qualifiers.Server; + + + +/** + * Obtém propriedades externas do jboss. + * + */ + +@ApplicationScoped +public class PropertiesFactoryServer extends PropertiesFactory implements Serializable { + + private static final long serialVersionUID = 1L; + + private static final String SERVER_PATH = System.getProperty("jboss.home.dir") + "/ans/properties/"; + + @Produces + @Server + public Properties produceProperties(InjectionPoint injectionPoint) throws IOException{ + return super.produceProperties(injectionPoint); + } + + @Produces + @Server + public String produceProperty(InjectionPoint injectionPoint) throws IOException{ + return super.produceProperty(injectionPoint); + } + + @Override + protected Properties getProperties(String file) throws IOException{ + Properties props = new Properties(); + + FileInputStream f = new FileInputStream(SERVER_PATH + file); + props.load(f); + + return props; + } + +} \ No newline at end of file diff --git a/src/main/java/br/gov/ans/factories/qualifiers/Local.java b/src/main/java/br/gov/ans/factories/qualifiers/Local.java new file mode 100644 index 0000000..0f8a673 --- /dev/null +++ b/src/main/java/br/gov/ans/factories/qualifiers/Local.java @@ -0,0 +1,15 @@ +package br.gov.ans.factories.qualifiers; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +@Qualifier +@Retention(RetentionPolicy.RUNTIME) +@Target({ElementType.FIELD, ElementType.METHOD, ElementType.TYPE}) +public @interface Local { + +} diff --git a/src/main/java/br/gov/ans/factories/qualifiers/PropertiesInfo.java b/src/main/java/br/gov/ans/factories/qualifiers/PropertiesInfo.java new file mode 100644 index 0000000..0a48352 --- /dev/null +++ b/src/main/java/br/gov/ans/factories/qualifiers/PropertiesInfo.java @@ -0,0 +1,13 @@ +package br.gov.ans.factories.qualifiers; + +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; +import java.lang.annotation.ElementType; + +@Retention(RetentionPolicy.RUNTIME) +@Target({ElementType.FIELD, ElementType.METHOD, ElementType.TYPE}) +public @interface PropertiesInfo { + String file(); + String key() default ""; +} diff --git a/src/main/java/br/gov/ans/factories/qualifiers/Server.java b/src/main/java/br/gov/ans/factories/qualifiers/Server.java new file mode 100644 index 0000000..2e02a77 --- /dev/null +++ b/src/main/java/br/gov/ans/factories/qualifiers/Server.java @@ -0,0 +1,15 @@ +package br.gov.ans.factories.qualifiers; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +import javax.inject.Qualifier; + +@Qualifier +@Retention(RetentionPolicy.RUNTIME) +@Target({ElementType.FIELD, ElementType.METHOD, ElementType.TYPE}) +public @interface Server { + +} diff --git a/src/main/java/br/gov/ans/filters/SessionInvalidateFilter.java b/src/main/java/br/gov/ans/filters/SessionInvalidateFilter.java new file mode 100644 index 0000000..202bbb8 --- /dev/null +++ b/src/main/java/br/gov/ans/filters/SessionInvalidateFilter.java @@ -0,0 +1,34 @@ +package br.gov.ans.filters; + +import java.io.IOException; + +import javax.inject.Inject; +import javax.servlet.http.HttpServletRequest; +import javax.ws.rs.container.ContainerRequestContext; +import javax.ws.rs.container.ContainerResponseContext; +import javax.ws.rs.container.ContainerResponseFilter; +import javax.ws.rs.core.Context; +import javax.ws.rs.ext.Provider; + +import org.jboss.logging.Logger; + +@Provider +public class SessionInvalidateFilter implements ContainerResponseFilter{ + + @Context + private HttpServletRequest request; + + @Inject + private Logger logger; + + @Override + public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) + throws IOException { + try{ + request.getSession().invalidate(); + }catch(Exception ex){ + logger.error(ex); + } + } + +} diff --git a/src/main/java/br/gov/ans/templates/dao/ColaboradorDAO.java b/src/main/java/br/gov/ans/templates/dao/ColaboradorDAO.java new file mode 100644 index 0000000..a0e7868 --- /dev/null +++ b/src/main/java/br/gov/ans/templates/dao/ColaboradorDAO.java @@ -0,0 +1,80 @@ +package br.gov.ans.templates.dao; + +import static br.gov.ans.templates.util.DAOUtils.setPaginacaoQuery; +import static br.gov.ans.templates.util.DAOUtils.setParametrosQuery; + +import java.util.HashMap; +import java.util.List; + +import javax.inject.Inject; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.persistence.PersistenceContextType; +import javax.persistence.Query; + +import br.gov.ans.dao.DAO; +import br.gov.ans.exceptions.ResourceNotFoundException; +import br.gov.ans.templates.modelo.Colaborador; +import br.gov.ans.utils.MessageUtils; + +public class ColaboradorDAO { + + @PersistenceContext(unitName = "templates_broker_pu", type = PersistenceContextType.EXTENDED) + private EntityManager em; + + @Inject + private DAO dao; + + @Inject + private MessageUtils messages; + + public Colaborador getColaborador(Long idTemplate, String usuario) throws ResourceNotFoundException{ + HashMap params = new HashMap(); + + params.put("template", idTemplate); + params.put("usuario", usuario); + + List resultado = dao.executeNamedQuery("Colaborador.recuperarColaborador", params); + + if(resultado.size() < 1){ + throw new ResourceNotFoundException(messages.getMessage("erro.colaborador.nao.encontrado", usuario)); + } + + return resultado.get(0); + } + + @SuppressWarnings("unchecked") + public List getColaboradores(Long idTemplate, Integer pagina, Integer qtdRegistros){ + HashMap params = new HashMap(); + + params.put("template", idTemplate); + + Query query = em.createNamedQuery("Colaborador.recuperarColaboradores"); + + setParametrosQuery(query, params); + + setPaginacaoQuery(query, pagina, qtdRegistros); + + return query.getResultList(); + } + + public Long countColaboradores(Long idTemplate){ + HashMap params = new HashMap(); + + params.put("template", idTemplate); + + Query query = em.createNamedQuery("Colaborador.countColaboradores"); + + setParametrosQuery(query, params); + + return (Long) query.getSingleResult(); + } + + public void persist(Colaborador colaborador){ + dao.persist(colaborador); + } + + public void merge(Colaborador colaborador){ + dao.merge(colaborador); + } +} diff --git a/src/main/java/br/gov/ans/templates/dao/TemplatesDAO.java b/src/main/java/br/gov/ans/templates/dao/TemplatesDAO.java new file mode 100644 index 0000000..da93b2d --- /dev/null +++ b/src/main/java/br/gov/ans/templates/dao/TemplatesDAO.java @@ -0,0 +1,97 @@ +package br.gov.ans.templates.dao; + +import static br.gov.ans.templates.util.DAOUtils.setPaginacaoQuery; +import static br.gov.ans.templates.util.DAOUtils.setParametrosQuery; + +import java.util.HashMap; +import java.util.List; + +import javax.inject.Inject; +import javax.persistence.EntityManager; +import javax.persistence.PersistenceContext; +import javax.persistence.PersistenceContextType; +import javax.persistence.Query; + +import org.apache.commons.lang3.StringUtils; + +import br.gov.ans.dao.DAO; +import br.gov.ans.templates.modelo.Template;; + +public class TemplatesDAO { + + @PersistenceContext(unitName = "templates_broker_pu", type = PersistenceContextType.EXTENDED) + private EntityManager em; + + @Inject + private DAO