Class AccountServiceBase

  • All Implemented Interfaces:
    es.caib.seycon.ng.servei.AccountService

    public abstract class AccountServiceBase
    extends Object
    implements es.caib.seycon.ng.servei.AccountService

    Spring Service base class for es.caib.seycon.ng.servei.AccountService, provides access to all services and entities referenced by this service.

    see es.caib.seycon.ng.servei.AccountService
    • Constructor Detail

      • AccountServiceBase

        public AccountServiceBase()
    • Method Detail

      • setAccountService

        public void setAccountService​(com.soffid.iam.service.AccountService accountService)
        Sets reference to accountService.
      • getAccountService

        public com.soffid.iam.service.AccountService getAccountService()
        Gets reference to accountService.
      • hasAccountSshKey

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public boolean hasAccountSshKey​(es.caib.seycon.ng.comu.Account account)
                                 throws es.caib.seycon.ng.exception.InternalErrorException,
                                        es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        hasAccountSshKey in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleHasAccountSshKey

        protected abstract boolean handleHasAccountSshKey​(es.caib.seycon.ng.comu.Account account)
                                                   throws Exception
        Throws:
        Exception
      • isAccountPasswordAvailable

        @Transactional(rollbackFor=java.lang.Exception.class)
        public boolean isAccountPasswordAvailable​(long accountId)
                                           throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        isAccountPasswordAvailable in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleIsAccountPasswordAvailable

        protected abstract boolean handleIsAccountPasswordAvailable​(long accountId)
                                                             throws Exception
        Throws:
        Exception
      • isUpdatePending

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public boolean isUpdatePending​(es.caib.seycon.ng.comu.Account account)
                                throws es.caib.seycon.ng.exception.InternalErrorException,
                                       es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        isUpdatePending in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleIsUpdatePending

        protected abstract boolean handleIsUpdatePending​(es.caib.seycon.ng.comu.Account account)
                                                  throws Exception
        Throws:
        Exception
      • needsAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       noRollbackFor=java.lang.Exception.class)
        public boolean needsAccount​(String userName,
                                    String dispatcherName)
                             throws es.caib.seycon.ng.exception.InternalErrorException,
                                    es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        needsAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • setHPAccountPassword

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public boolean setHPAccountPassword​(es.caib.seycon.ng.comu.Account account,
                                            es.caib.seycon.ng.comu.Password password,
                                            Date untilDate,
                                            boolean force)
                                     throws es.caib.seycon.ng.exception.InternalErrorException,
                                            es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        setHPAccountPassword in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleSetHPAccountPassword

        protected abstract boolean handleSetHPAccountPassword​(es.caib.seycon.ng.comu.Account account,
                                                              es.caib.seycon.ng.comu.Password password,
                                                              Date untilDate,
                                                              boolean force)
                                                       throws Exception
        Throws:
        Exception
      • findAccountByJsonQueryAsync

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public com.soffid.iam.api.AsyncList<es.caib.seycon.ng.comu.Account> findAccountByJsonQueryAsync​(String query)
                                                                                                 throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                                        es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountByJsonQueryAsync in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountByJsonQueryAsync

        protected abstract com.soffid.iam.api.AsyncList<es.caib.seycon.ng.comu.Account> handleFindAccountByJsonQueryAsync​(String query)
                                                                                                                   throws Exception
        Throws:
        Exception
      • findAccountByTextAndJsonQueryAsync

        @Transactional(rollbackFor=java.lang.Exception.class)
        public com.soffid.iam.api.AsyncList<es.caib.seycon.ng.comu.Account> findAccountByTextAndJsonQueryAsync​(String text,
                                                                                                               String jsonQuery)
                                                                                                        throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountByTextAndJsonQueryAsync in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountByTextAndJsonQueryAsync

        protected abstract com.soffid.iam.api.AsyncList<es.caib.seycon.ng.comu.Account> handleFindAccountByTextAndJsonQueryAsync​(String text,
                                                                                                                                 String jsonQuery)
                                                                                                                          throws Exception
        Throws:
        Exception
      • findAccountByTextAsync

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public com.soffid.iam.api.AsyncList<es.caib.seycon.ng.comu.Account> findAccountByTextAsync​(String text)
                                                                                            throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                                   es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountByTextAsync in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountByTextAsync

        protected abstract com.soffid.iam.api.AsyncList<es.caib.seycon.ng.comu.Account> handleFindAccountByTextAsync​(String text)
                                                                                                              throws Exception
        Throws:
        Exception
      • disableAccounts

        @Transactional(rollbackFor=java.lang.Exception.class)
        public com.soffid.iam.api.AsyncProcessTracker disableAccounts​(String scimQuery,
                                                                      List<com.soffid.iam.api.DisableObjectRule> rules)
                                                               throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        disableAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleDisableAccounts

        protected abstract com.soffid.iam.api.AsyncProcessTracker handleDisableAccounts​(String scimQuery,
                                                                                        List<com.soffid.iam.api.DisableObjectRule> rules)
                                                                                 throws Exception
        Throws:
        Exception
      • disableAccountsPreview

        @Transactional(rollbackFor=java.lang.Exception.class)
        public com.soffid.iam.api.AsyncProcessTracker disableAccountsPreview​(String scimQuery,
                                                                             List<com.soffid.iam.api.DisableObjectRule> rules,
                                                                             List<Object[]> actions)
                                                                      throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        disableAccountsPreview in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleDisableAccountsPreview

        protected abstract com.soffid.iam.api.AsyncProcessTracker handleDisableAccountsPreview​(String scimQuery,
                                                                                               List<com.soffid.iam.api.DisableObjectRule> rules,
                                                                                               List<Object[]> actions)
                                                                                        throws Exception
        Throws:
        Exception
      • findAccountByJsonQuery

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public com.soffid.iam.api.PagedResult<es.caib.seycon.ng.comu.Account> findAccountByJsonQuery​(String query,
                                                                                                     Integer first,
                                                                                                     Integer num)
                                                                                              throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                                     es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountByJsonQuery in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountByJsonQuery

        protected abstract com.soffid.iam.api.PagedResult<es.caib.seycon.ng.comu.Account> handleFindAccountByJsonQuery​(String query,
                                                                                                                       Integer first,
                                                                                                                       Integer num)
                                                                                                                throws Exception
        Throws:
        Exception
      • findAccountByTextAndJsonQuery

        @Transactional(rollbackFor=java.lang.Exception.class)
        public com.soffid.iam.api.PagedResult<es.caib.seycon.ng.comu.Account> findAccountByTextAndJsonQuery​(String text,
                                                                                                            String jsonQuery,
                                                                                                            Integer start,
                                                                                                            Integer pageSize)
                                                                                                     throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountByTextAndJsonQuery in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountByTextAndJsonQuery

        protected abstract com.soffid.iam.api.PagedResult<es.caib.seycon.ng.comu.Account> handleFindAccountByTextAndJsonQuery​(String text,
                                                                                                                              String jsonQuery,
                                                                                                                              Integer start,
                                                                                                                              Integer pageSize)
                                                                                                                       throws Exception
        Throws:
        Exception
      • createAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account createAccount​(es.caib.seycon.ng.comu.Account account)
                                                     throws es.caib.seycon.ng.exception.InternalErrorException,
                                                            es.caib.seycon.ng.exception.InternalErrorException,
                                                            es.caib.seycon.ng.exception.AccountAlreadyExistsException
        Specified by:
        createAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.AccountAlreadyExistsException
      • handleCreateAccount

        protected abstract es.caib.seycon.ng.comu.Account handleCreateAccount​(es.caib.seycon.ng.comu.Account account)
                                                                       throws Exception
        Throws:
        Exception
      • createAccount2

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account createAccount2​(es.caib.seycon.ng.comu.Account account)
                                                      throws es.caib.seycon.ng.exception.InternalErrorException,
                                                             es.caib.seycon.ng.exception.InternalErrorException,
                                                             es.caib.seycon.ng.exception.AccountAlreadyExistsException
        Specified by:
        createAccount2 in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.AccountAlreadyExistsException
      • handleCreateAccount2

        protected abstract es.caib.seycon.ng.comu.Account handleCreateAccount2​(es.caib.seycon.ng.comu.Account account)
                                                                        throws Exception
        Throws:
        Exception
      • findAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account findAccount​(String accountAndDispatcher)
                                                   throws es.caib.seycon.ng.exception.InternalErrorException,
                                                          es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccount

        protected abstract es.caib.seycon.ng.comu.Account handleFindAccount​(String accountAndDispatcher)
                                                                     throws Exception
        Throws:
        Exception
      • findAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account findAccount​(String accountName,
                                                          String dispatcherName)
                                                   throws es.caib.seycon.ng.exception.InternalErrorException,
                                                          es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccount

        protected abstract es.caib.seycon.ng.comu.Account handleFindAccount​(String accountName,
                                                                            String dispatcherName)
                                                                     throws Exception
        Throws:
        Exception
      • findAccountById

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account findAccountById​(long id)
                                                       throws es.caib.seycon.ng.exception.InternalErrorException,
                                                              es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountById in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountById

        protected abstract es.caib.seycon.ng.comu.Account handleFindAccountById​(long id)
                                                                         throws Exception
        Throws:
        Exception
      • generateAccountSshPrivateKey

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account generateAccountSshPrivateKey​(es.caib.seycon.ng.comu.Account account)
                                                                    throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                           es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        generateAccountSshPrivateKey in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGenerateAccountSshPrivateKey

        protected abstract es.caib.seycon.ng.comu.Account handleGenerateAccountSshPrivateKey​(es.caib.seycon.ng.comu.Account account)
                                                                                      throws Exception
        Throws:
        Exception
      • load

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account load​(Long identifier)
                                            throws es.caib.seycon.ng.exception.InternalErrorException,
                                                   es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        load in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleLoad

        protected abstract es.caib.seycon.ng.comu.Account handleLoad​(Long identifier)
                                                              throws Exception
        Throws:
        Exception
      • removeAccountSnapshot

        @Transactional(rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account removeAccountSnapshot​(es.caib.seycon.ng.comu.Account account)
                                                             throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        removeAccountSnapshot in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleRemoveAccountSnapshot

        protected abstract es.caib.seycon.ng.comu.Account handleRemoveAccountSnapshot​(es.caib.seycon.ng.comu.Account account)
                                                                               throws Exception
        Throws:
        Exception
      • setAccountSshPrivateKey

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account setAccountSshPrivateKey​(es.caib.seycon.ng.comu.Account account,
                                                                      String privateKey)
                                                               throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                      es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        setAccountSshPrivateKey in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleSetAccountSshPrivateKey

        protected abstract es.caib.seycon.ng.comu.Account handleSetAccountSshPrivateKey​(es.caib.seycon.ng.comu.Account account,
                                                                                        String privateKey)
                                                                                 throws Exception
        Throws:
        Exception
      • updateAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account updateAccount​(es.caib.seycon.ng.comu.Account account)
                                                     throws es.caib.seycon.ng.exception.InternalErrorException,
                                                            es.caib.seycon.ng.exception.InternalErrorException,
                                                            es.caib.seycon.ng.exception.AccountAlreadyExistsException
        Specified by:
        updateAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.AccountAlreadyExistsException
      • handleUpdateAccount

        protected abstract es.caib.seycon.ng.comu.Account handleUpdateAccount​(es.caib.seycon.ng.comu.Account account)
                                                                       throws Exception
        Throws:
        Exception
      • updateAccount2

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Account updateAccount2​(es.caib.seycon.ng.comu.Account account)
                                                      throws es.caib.seycon.ng.exception.InternalErrorException,
                                                             es.caib.seycon.ng.exception.InternalErrorException,
                                                             es.caib.seycon.ng.exception.AccountAlreadyExistsException
        Specified by:
        updateAccount2 in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.AccountAlreadyExistsException
      • handleUpdateAccount2

        protected abstract es.caib.seycon.ng.comu.Account handleUpdateAccount2​(es.caib.seycon.ng.comu.Account account)
                                                                        throws Exception
        Throws:
        Exception
      • createAccountAttribute

        @Transactional(rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.DadaUsuari createAccountAttribute​(es.caib.seycon.ng.comu.DadaUsuari attribute)
                                                                 throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        createAccountAttribute in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleCreateAccountAttribute

        protected abstract es.caib.seycon.ng.comu.DadaUsuari handleCreateAccountAttribute​(es.caib.seycon.ng.comu.DadaUsuari attribute)
                                                                                   throws Exception
        Throws:
        Exception
      • updateAccountAttribute

        @Transactional(rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.DadaUsuari updateAccountAttribute​(es.caib.seycon.ng.comu.DadaUsuari attribute)
                                                                 throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        updateAccountAttribute in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleUpdateAccountAttribute

        protected abstract es.caib.seycon.ng.comu.DadaUsuari handleUpdateAccountAttribute​(es.caib.seycon.ng.comu.DadaUsuari attribute)
                                                                                   throws Exception
        Throws:
        Exception
      • generateAccountPassword

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Password generateAccountPassword​(es.caib.seycon.ng.comu.Account account)
                                                                throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                       es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        generateAccountPassword in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGenerateAccountPassword

        protected abstract es.caib.seycon.ng.comu.Password handleGenerateAccountPassword​(es.caib.seycon.ng.comu.Account account)
                                                                                  throws Exception
        Throws:
        Exception
      • generateAccountTemporaryPassword

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Password generateAccountTemporaryPassword​(es.caib.seycon.ng.comu.Account account)
                                                                         throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        generateAccountTemporaryPassword in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGenerateAccountTemporaryPassword

        protected abstract es.caib.seycon.ng.comu.Password handleGenerateAccountTemporaryPassword​(es.caib.seycon.ng.comu.Account account)
                                                                                           throws Exception
        Throws:
        Exception
      • queryAccountPassword

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       noRollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Password queryAccountPassword​(es.caib.seycon.ng.comu.Account account)
                                                             throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                    es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        queryAccountPassword in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleQueryAccountPassword

        protected abstract es.caib.seycon.ng.comu.Password handleQueryAccountPassword​(es.caib.seycon.ng.comu.Account account)
                                                                               throws Exception
        Throws:
        Exception
      • queryAccountPasswordBypassPolicy

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       noRollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Password queryAccountPasswordBypassPolicy​(long accountId,
                                                                                es.caib.seycon.ng.comu.AccountAccessLevelEnum level)
                                                                         throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        queryAccountPasswordBypassPolicy in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleQueryAccountPasswordBypassPolicy

        protected abstract es.caib.seycon.ng.comu.Password handleQueryAccountPasswordBypassPolicy​(long accountId,
                                                                                                  es.caib.seycon.ng.comu.AccountAccessLevelEnum level)
                                                                                           throws Exception
        Throws:
        Exception
      • queryAccountSshKey

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       noRollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Password queryAccountSshKey​(es.caib.seycon.ng.comu.Account account)
                                                           throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                  es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        queryAccountSshKey in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleQueryAccountSshKey

        protected abstract es.caib.seycon.ng.comu.Password handleQueryAccountSshKey​(es.caib.seycon.ng.comu.Account account)
                                                                             throws Exception
        Throws:
        Exception
      • queryAccountSshKeyBypassPolicy

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       noRollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Password queryAccountSshKeyBypassPolicy​(long accountId,
                                                                              es.caib.seycon.ng.comu.AccountAccessLevelEnum level)
                                                                       throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        queryAccountSshKeyBypassPolicy in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleQueryAccountSshKeyBypassPolicy

        protected abstract es.caib.seycon.ng.comu.Password handleQueryAccountSshKeyBypassPolicy​(long accountId,
                                                                                                es.caib.seycon.ng.comu.AccountAccessLevelEnum level)
                                                                                         throws Exception
        Throws:
        Exception
      • setAccountPassword

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Password setAccountPassword​(es.caib.seycon.ng.comu.Account account,
                                                                  es.caib.seycon.ng.comu.Password password,
                                                                  boolean temporary,
                                                                  boolean online)
                                                           throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                  es.caib.seycon.ng.exception.InternalErrorException,
                                                                  es.caib.seycon.ng.exception.BadPasswordException
        Specified by:
        setAccountPassword in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.BadPasswordException
      • handleSetAccountPassword

        protected abstract es.caib.seycon.ng.comu.Password handleSetAccountPassword​(es.caib.seycon.ng.comu.Account account,
                                                                                    es.caib.seycon.ng.comu.Password password,
                                                                                    boolean temporary,
                                                                                    boolean online)
                                                                             throws Exception
        Throws:
        Exception
      • checkPasswordSynchronizationStatus

        @Transactional(rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.PasswordValidation checkPasswordSynchronizationStatus​(es.caib.seycon.ng.comu.Account account)
                                                                                     throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                            es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        checkPasswordSynchronizationStatus in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleCheckPasswordSynchronizationStatus

        protected abstract es.caib.seycon.ng.comu.PasswordValidation handleCheckPasswordSynchronizationStatus​(es.caib.seycon.ng.comu.Account account)
                                                                                                       throws Exception
        Throws:
        Exception
      • createAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.UserAccount createAccount​(es.caib.seycon.ng.comu.Usuari usuari,
                                                                es.caib.seycon.ng.comu.Dispatcher dispatcher,
                                                                String name)
                                                         throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                es.caib.seycon.ng.exception.InternalErrorException,
                                                                es.caib.seycon.ng.exception.NeedsAccountNameException,
                                                                es.caib.seycon.ng.exception.AccountAlreadyExistsException
        Specified by:
        createAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.NeedsAccountNameException
        es.caib.seycon.ng.exception.AccountAlreadyExistsException
      • handleCreateAccount

        protected abstract es.caib.seycon.ng.comu.UserAccount handleCreateAccount​(es.caib.seycon.ng.comu.Usuari usuari,
                                                                                  es.caib.seycon.ng.comu.Dispatcher dispatcher,
                                                                                  String name)
                                                                           throws Exception
        Throws:
        Exception
      • getHPAccountOwner

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public es.caib.seycon.ng.comu.Usuari getHPAccountOwner​(es.caib.seycon.ng.comu.Account account)
                                                        throws es.caib.seycon.ng.exception.InternalErrorException,
                                                               es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getHPAccountOwner in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGetHPAccountOwner

        protected abstract es.caib.seycon.ng.comu.Usuari handleGetHPAccountOwner​(es.caib.seycon.ng.comu.Account account)
                                                                          throws Exception
        Throws:
        Exception
      • isUpdatePendingExtended

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public int isUpdatePendingExtended​(es.caib.seycon.ng.comu.Account account)
                                    throws es.caib.seycon.ng.exception.InternalErrorException,
                                           es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        isUpdatePendingExtended in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleIsUpdatePendingExtended

        protected abstract int handleIsUpdatePendingExtended​(es.caib.seycon.ng.comu.Account account)
                                                      throws Exception
        Throws:
        Exception
      • gessAccountName

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       noRollbackFor=java.lang.Exception.class)
        public String gessAccountName​(String userName,
                                      String dispatcherName)
                               throws es.caib.seycon.ng.exception.InternalErrorException,
                                      es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        gessAccountName in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • guessAccountNameForDomain

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       noRollbackFor=java.lang.Exception.class)
        public String guessAccountNameForDomain​(String userName,
                                                String domainName)
                                         throws es.caib.seycon.ng.exception.InternalErrorException,
                                                es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        guessAccountNameForDomain in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • predictAccountName

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       noRollbackFor=java.lang.Exception.class,
                       readOnly=true)
        public String predictAccountName​(Long userId,
                                         String dispatcher,
                                         Long domainId)
                                  throws es.caib.seycon.ng.exception.InternalErrorException,
                                         es.caib.seycon.ng.exception.InternalErrorException,
                                         es.caib.seycon.ng.exception.NeedsAccountNameException,
                                         es.caib.seycon.ng.exception.AccountAlreadyExistsException
        Specified by:
        predictAccountName in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.NeedsAccountNameException
        es.caib.seycon.ng.exception.AccountAlreadyExistsException
      • findAccountByJsonQuery

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public Collection<es.caib.seycon.ng.comu.Account> findAccountByJsonQuery​(String query)
                                                                          throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                 es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountByJsonQuery in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountByJsonQuery

        protected abstract Collection<es.caib.seycon.ng.comu.Account> handleFindAccountByJsonQuery​(String query)
                                                                                            throws Exception
        Throws:
        Exception
      • findAccountByText

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public Collection<es.caib.seycon.ng.comu.Account> findAccountByText​(String text)
                                                                     throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                            es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountByText in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • findAccountNames

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       readOnly=true)
        public Collection<String> findAccountNames​(String system)
                                            throws es.caib.seycon.ng.exception.InternalErrorException,
                                                   es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountNames in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • findAccountServices

        @Transactional(rollbackFor=java.lang.Exception.class)
        public Collection<com.soffid.iam.api.HostService> findAccountServices​(es.caib.seycon.ng.comu.Account account)
                                                                       throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountServices in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountServices

        protected abstract Collection<com.soffid.iam.api.HostService> handleFindAccountServices​(es.caib.seycon.ng.comu.Account account)
                                                                                         throws Exception
        Throws:
        Exception
      • getAccountUsers

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public Collection<String> getAccountUsers​(es.caib.seycon.ng.comu.Account account)
                                           throws es.caib.seycon.ng.exception.InternalErrorException,
                                                  es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getAccountUsers in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • getAccountUsers

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public Collection<String> getAccountUsers​(es.caib.seycon.ng.comu.Account account,
                                                  es.caib.seycon.ng.comu.AccountAccessLevelEnum level)
                                           throws es.caib.seycon.ng.exception.InternalErrorException,
                                                  es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getAccountUsers in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGetAccountUsers

        protected abstract Collection<String> handleGetAccountUsers​(es.caib.seycon.ng.comu.Account account,
                                                                    es.caib.seycon.ng.comu.AccountAccessLevelEnum level)
                                                             throws Exception
        Throws:
        Exception
      • getActiveTasks

        @Transactional(rollbackFor=java.lang.Exception.class)
        public Collection<es.caib.seycon.ng.comu.SeyconAgentTaskLog> getActiveTasks​(es.caib.seycon.ng.comu.Account account)
                                                                             throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getActiveTasks in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGetActiveTasks

        protected abstract Collection<es.caib.seycon.ng.comu.SeyconAgentTaskLog> handleGetActiveTasks​(es.caib.seycon.ng.comu.Account account)
                                                                                               throws Exception
        Throws:
        Exception
      • getUserAccounts

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public Collection<es.caib.seycon.ng.comu.UserAccount> getUserAccounts​(es.caib.seycon.ng.comu.Usuari usuari)
                                                                       throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                              es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getUserAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGetUserAccounts

        protected abstract Collection<es.caib.seycon.ng.comu.UserAccount> handleGetUserAccounts​(es.caib.seycon.ng.comu.Usuari usuari)
                                                                                         throws Exception
        Throws:
        Exception
      • getUserGrantedAccountIds

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public Collection<Long> getUserGrantedAccountIds​(es.caib.seycon.ng.comu.Usuari usuari)
                                                  throws es.caib.seycon.ng.exception.InternalErrorException,
                                                         es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getUserGrantedAccountIds in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGetUserGrantedAccountIds

        protected abstract Collection<Long> handleGetUserGrantedAccountIds​(es.caib.seycon.ng.comu.Usuari usuari)
                                                                    throws Exception
        Throws:
        Exception
      • getUserGrantedAccounts

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public Collection<es.caib.seycon.ng.comu.Account> getUserGrantedAccounts​(es.caib.seycon.ng.comu.Usuari usuari)
                                                                          throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                 es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getUserGrantedAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGetUserGrantedAccounts

        protected abstract Collection<es.caib.seycon.ng.comu.Account> handleGetUserGrantedAccounts​(es.caib.seycon.ng.comu.Usuari usuari)
                                                                                            throws Exception
        Throws:
        Exception
      • getUserGrantedAccounts

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public Collection<es.caib.seycon.ng.comu.Account> getUserGrantedAccounts​(es.caib.seycon.ng.comu.Usuari usuari,
                                                                                 es.caib.seycon.ng.comu.AccountAccessLevelEnum level)
                                                                          throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                 es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getUserGrantedAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGetUserGrantedAccounts

        protected abstract Collection<es.caib.seycon.ng.comu.Account> handleGetUserGrantedAccounts​(es.caib.seycon.ng.comu.Usuari usuari,
                                                                                                   es.caib.seycon.ng.comu.AccountAccessLevelEnum level)
                                                                                            throws Exception
        Throws:
        Exception
      • findAccountsByCriteria

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.Account> findAccountsByCriteria​(es.caib.seycon.ng.comu.AccountCriteria criteria)
                                                                    throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                           es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountsByCriteria in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountsByCriteria

        protected abstract List<es.caib.seycon.ng.comu.Account> handleFindAccountsByCriteria​(es.caib.seycon.ng.comu.AccountCriteria criteria)
                                                                                      throws Exception
        Throws:
        Exception
      • findAccountsNearToExpire

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.Account> findAccountsNearToExpire​(Date currentDate,
                                                                             Date limitDate,
                                                                             Collection<es.caib.seycon.ng.comu.AccountType> accTypes,
                                                                             Collection<es.caib.seycon.ng.comu.TipusUsuari> userTypes)
                                                                      throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                             es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findAccountsNearToExpire in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindAccountsNearToExpire

        protected abstract List<es.caib.seycon.ng.comu.Account> handleFindAccountsNearToExpire​(Date currentDate,
                                                                                               Date limitDate,
                                                                                               Collection<es.caib.seycon.ng.comu.AccountType> accTypes,
                                                                                               Collection<es.caib.seycon.ng.comu.TipusUsuari> userTypes)
                                                                                        throws Exception
        Throws:
        Exception
      • findSharedAccountsByUser

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.Account> findSharedAccountsByUser​(String userName)
                                                                      throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findSharedAccountsByUser in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindSharedAccountsByUser

        protected abstract List<es.caib.seycon.ng.comu.Account> handleFindSharedAccountsByUser​(String userName)
                                                                                        throws Exception
        Throws:
        Exception
      • findSharedAccountsHistoryByUser

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.AccountHistory> findSharedAccountsHistoryByUser​(String userName)
                                                                                    throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findSharedAccountsHistoryByUser in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindSharedAccountsHistoryByUser

        protected abstract List<es.caib.seycon.ng.comu.AccountHistory> handleFindSharedAccountsHistoryByUser​(String userName)
                                                                                                      throws Exception
        Throws:
        Exception
      • findUserAccounts

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.UserAccount> findUserAccounts​(String userName,
                                                                         String dispatcherName)
                                                                  throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                         es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findUserAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindUserAccounts

        protected abstract List<es.caib.seycon.ng.comu.UserAccount> handleFindUserAccounts​(String userName,
                                                                                           String dispatcherName)
                                                                                    throws Exception
        Throws:
        Exception
      • findUserAccountsByDomain

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.UserAccount> findUserAccountsByDomain​(String user,
                                                                                 String passwordDomain)
                                                                          throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                                 es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        findUserAccountsByDomain in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleFindUserAccountsByDomain

        protected abstract List<es.caib.seycon.ng.comu.UserAccount> handleFindUserAccountsByDomain​(String user,
                                                                                                   String passwordDomain)
                                                                                            throws Exception
        Throws:
        Exception
      • getAccountAttributes

        @Transactional(rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.DadaUsuari> getAccountAttributes​(es.caib.seycon.ng.comu.Account acc)
                                                                     throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        getAccountAttributes in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGetAccountAttributes

        protected abstract List<es.caib.seycon.ng.comu.DadaUsuari> handleGetAccountAttributes​(es.caib.seycon.ng.comu.Account acc)
                                                                                       throws Exception
        Throws:
        Exception
      • listNonUserAccounts

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.Account> listNonUserAccounts​(es.caib.seycon.ng.comu.Dispatcher dispatcher,
                                                                        String nom)
                                                                 throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                        es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        listNonUserAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleListNonUserAccounts

        protected abstract List<es.caib.seycon.ng.comu.Account> handleListNonUserAccounts​(es.caib.seycon.ng.comu.Dispatcher dispatcher,
                                                                                          String nom)
                                                                                   throws Exception
        Throws:
        Exception
      • listUserAccounts

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public List<es.caib.seycon.ng.comu.UserAccount> listUserAccounts​(es.caib.seycon.ng.comu.Usuari usuari)
                                                                  throws es.caib.seycon.ng.exception.InternalErrorException,
                                                                         es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        listUserAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleListUserAccounts

        protected abstract List<es.caib.seycon.ng.comu.UserAccount> handleListUserAccounts​(es.caib.seycon.ng.comu.Usuari usuari)
                                                                                    throws Exception
        Throws:
        Exception
      • checkinHPAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void checkinHPAccount​(es.caib.seycon.ng.comu.Account account)
                              throws es.caib.seycon.ng.exception.InternalErrorException,
                                     es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        checkinHPAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleCheckinHPAccount

        protected abstract void handleCheckinHPAccount​(es.caib.seycon.ng.comu.Account account)
                                                throws Exception
        Throws:
        Exception
      • checkinHPAccounts

        @Transactional(rollbackFor=java.lang.Exception.class)
        public void checkinHPAccounts()
                               throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        checkinHPAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleCheckinHPAccounts

        protected abstract void handleCheckinHPAccounts()
                                                 throws Exception
        Throws:
        Exception
      • generateUserAccounts

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void generateUserAccounts​(String user)
                                  throws es.caib.seycon.ng.exception.InternalErrorException,
                                         es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        generateUserAccounts in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGenerateUserAccounts

        protected abstract void handleGenerateUserAccounts​(String user)
                                                    throws Exception
        Throws:
        Exception
      • removeAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void removeAccount​(es.caib.seycon.ng.comu.Account account)
                           throws es.caib.seycon.ng.exception.InternalErrorException,
                                  es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        removeAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleRemoveAccount

        protected abstract void handleRemoveAccount​(es.caib.seycon.ng.comu.Account account)
                                             throws Exception
        Throws:
        Exception
      • removeAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void removeAccount​(es.caib.seycon.ng.comu.UserAccount account)
                           throws es.caib.seycon.ng.exception.InternalErrorException,
                                  es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        removeAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleRemoveAccount

        protected abstract void handleRemoveAccount​(es.caib.seycon.ng.comu.UserAccount account)
                                             throws Exception
        Throws:
        Exception
      • removeAccountAttribute

        @Transactional(rollbackFor=java.lang.Exception.class)
        public void removeAccountAttribute​(es.caib.seycon.ng.comu.DadaUsuari attribute)
                                    throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        removeAccountAttribute in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleRemoveAccountAttribute

        protected abstract void handleRemoveAccountAttribute​(es.caib.seycon.ng.comu.DadaUsuari attribute)
                                                      throws Exception
        Throws:
        Exception
      • renameAccount

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void renameAccount​(es.caib.seycon.ng.comu.Account account)
                           throws es.caib.seycon.ng.exception.InternalErrorException,
                                  es.caib.seycon.ng.exception.InternalErrorException,
                                  es.caib.seycon.ng.exception.AccountAlreadyExistsException
        Specified by:
        renameAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.AccountAlreadyExistsException
      • handleRenameAccount

        protected abstract void handleRenameAccount​(es.caib.seycon.ng.comu.Account account)
                                             throws Exception
        Throws:
        Exception
      • sendAccountPassword

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void sendAccountPassword​(es.caib.seycon.ng.comu.Account account)
                                 throws es.caib.seycon.ng.exception.InternalErrorException,
                                        es.caib.seycon.ng.exception.InternalErrorException,
                                        es.caib.seycon.ng.exception.BadPasswordException
        Specified by:
        sendAccountPassword in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.BadPasswordException
      • handleSendAccountPassword

        protected abstract void handleSendAccountPassword​(es.caib.seycon.ng.comu.Account account)
                                                   throws Exception
        Throws:
        Exception
      • setAccountPassword

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void setAccountPassword​(es.caib.seycon.ng.comu.Account account,
                                       es.caib.seycon.ng.comu.Password password)
                                throws es.caib.seycon.ng.exception.InternalErrorException,
                                       es.caib.seycon.ng.exception.InternalErrorException,
                                       es.caib.seycon.ng.exception.BadPasswordException
        Specified by:
        setAccountPassword in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.BadPasswordException
      • handleSetAccountPassword

        protected abstract void handleSetAccountPassword​(es.caib.seycon.ng.comu.Account account,
                                                         es.caib.seycon.ng.comu.Password password)
                                                  throws Exception
        Throws:
        Exception
      • setAccountTemporaryPassword

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void setAccountTemporaryPassword​(es.caib.seycon.ng.comu.Account account,
                                                es.caib.seycon.ng.comu.Password password)
                                         throws es.caib.seycon.ng.exception.InternalErrorException,
                                                es.caib.seycon.ng.exception.InternalErrorException,
                                                es.caib.seycon.ng.exception.BadPasswordException
        Specified by:
        setAccountTemporaryPassword in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
        es.caib.seycon.ng.exception.BadPasswordException
      • handleSetAccountTemporaryPassword

        protected abstract void handleSetAccountTemporaryPassword​(es.caib.seycon.ng.comu.Account account,
                                                                  es.caib.seycon.ng.comu.Password password)
                                                           throws Exception
        Throws:
        Exception
      • synchronizeAccount

        @Transactional(rollbackFor=java.lang.Exception.class)
        public void synchronizeAccount​(String accountName,
                                       String system)
                                throws es.caib.seycon.ng.exception.InternalErrorException,
                                       es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        synchronizeAccount in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleSynchronizeAccount

        protected abstract void handleSynchronizeAccount​(String accountName,
                                                         String system)
                                                  throws Exception
        Throws:
        Exception
      • updateAccountLastUpdate

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void updateAccountLastUpdate​(es.caib.seycon.ng.comu.Account account)
                                     throws es.caib.seycon.ng.exception.InternalErrorException,
                                            es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        updateAccountLastUpdate in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleUpdateAccountLastUpdate

        protected abstract void handleUpdateAccountLastUpdate​(es.caib.seycon.ng.comu.Account account)
                                                       throws Exception
        Throws:
        Exception
      • updateAccountPasswordDate

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void updateAccountPasswordDate​(es.caib.seycon.ng.comu.Account account,
                                              Long passwordTerm)
                                       throws es.caib.seycon.ng.exception.InternalErrorException,
                                              es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        updateAccountPasswordDate in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleUpdateAccountPasswordDate

        protected abstract void handleUpdateAccountPasswordDate​(es.caib.seycon.ng.comu.Account account,
                                                                Long passwordTerm)
                                                         throws Exception
        Throws:
        Exception
      • updateAccountPasswordDate2

        @Transactional(isolation=DEFAULT,
                       propagation=REQUIRED,
                       rollbackFor=java.lang.Exception.class)
        public void updateAccountPasswordDate2​(es.caib.seycon.ng.comu.Account account,
                                               Date expirationDate)
                                        throws es.caib.seycon.ng.exception.InternalErrorException,
                                               es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        updateAccountPasswordDate2 in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleUpdateAccountPasswordDate2

        protected abstract void handleUpdateAccountPasswordDate2​(es.caib.seycon.ng.comu.Account account,
                                                                 Date expirationDate)
                                                          throws Exception
        Throws:
        Exception
      • grantAcccountToUser

        @Transactional(rollbackFor=java.lang.Exception.class)
        public void grantAcccountToUser​(es.caib.seycon.ng.comu.Account account,
                                        String user,
                                        Long processId,
                                        Date until)
                                 throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        grantAcccountToUser in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleGrantAcccountToUser

        protected abstract void handleGrantAcccountToUser​(es.caib.seycon.ng.comu.Account account,
                                                          String user,
                                                          Long processId,
                                                          Date until)
                                                   throws Exception
        Throws:
        Exception
      • registerAccountReservationProcess

        @Transactional(rollbackFor=java.lang.Exception.class)
        public void registerAccountReservationProcess​(es.caib.seycon.ng.comu.Account account,
                                                      String user,
                                                      Long processId)
                                               throws es.caib.seycon.ng.exception.InternalErrorException
        Specified by:
        registerAccountReservationProcess in interface es.caib.seycon.ng.servei.AccountService
        Throws:
        es.caib.seycon.ng.exception.InternalErrorException
      • handleRegisterAccountReservationProcess

        protected abstract void handleRegisterAccountReservationProcess​(es.caib.seycon.ng.comu.Account account,
                                                                        String user,
                                                                        Long processId)
                                                                 throws Exception
        Throws:
        Exception
      • getPrincipal

        protected Principal getPrincipal()
        Gets the current principal if one has been set, otherwise returns null.
        Returns:
        the current principal