Interface BaseFormEngine<D extends BaseFormData>

All Known Subinterfaces:
FormEngine<D>, HasSubFormsEngine<D>, PanelFormEngine, SubFormEngine<D>
All Known Implementing Classes:
AbstractBaseTaskFormPresenter.AbstractBaseFormEngine, AbstractTaskFormPresenter.AbstractTaskFormPresenterFormEngine, DefaultSubFormPresenter.MasterDetailSubFormEngine, TaskExecutionFormPresenter.TaskExecutionFormPresenterEngine

public interface BaseFormEngine<D extends BaseFormData>
Define a engine de um Formulario Instanciado
Author:
Eduardo Frazao
  • Method Details

    • getEngineUUID

      String getEngineUUID()
    • generateUUID

      String generateUUID()
    • isBulk

      default boolean isBulk()
      Determina se a engine esta operando em modo bulk (finalizacao agrupada de tarefas).
      Returns:
      true se o formulario foi aberto para finalizar multiplas tarefas simultaneamente
    • getBulkTaskIds

      default List<String> getBulkTaskIds()
      Retorna a lista imutavel de taskIds participantes do bulk.
      Throws:
      RuntimeException - se a engine nao esta em modo bulk
    • formKey

      String formKey()
      Acesso ao formKey
      Returns:
    • getFormName

      String getFormName()
      Obtem o nome do form associado a engine
      Returns:
    • getFormDescription

      String getFormDescription()
      Obtem a descricao parametrizada no formulario, ou NULL se nao for definida
      Returns:
    • getTask

      Task getTask()
      Acesso a tarefa vigente
      Returns:
    • getHistoricTask

      HistoricTaskInstance getHistoricTask()
      Acesso ao processo
      Returns:
    • getTaskId

      String getTaskId()
      ID da tarefa
      Returns:
    • getProcessInstanceId

      String getProcessInstanceId()
      ID do Processo
      Returns:
    • getProcessDefinitionId

      String getProcessDefinitionId()
      ID da definicao do processo
      Returns:
    • getLabel

      Label getLabel(String id)
      Obtem uma referencia para o label informado
      Parameters:
      id -
      Returns:
    • getField

      Field<?> getField(String fieldId)
      Acesso a um campo de dados, via ID
      Parameters:
      fieldId -
      Returns:
    • getFieldIds

      Collection<String> getFieldIds()
      Coleta os campos disponveis na engine
      Returns:
    • getLayout

      LayoutWrapper getLayout(String layoutId)
      Acesso ao Wrapper de Layout, via ID
      Parameters:
      layoutId -
      Returns:
    • getLayoutIds

      Collection<String> getLayoutIds()
      Obtem uma colecao de paineis identificados
      Returns:
    • getValidators

      Collection<Validator> getValidators()
      Acesso a colecao de validadores
      Returns:
    • getValidator

      Validator getValidator(String id)
      Obtem um validador por ID
      Parameters:
      id -
      Returns:
    • registerValidator

      void registerValidator(String id, Validator validator)
      Registra dinamicamente um validador. Caso o mesmo ID já exista um erro será lançado
    • isValid

      boolean isValid()
      Determina se a engine de formularios considera os campos validos
      Returns:
    • isFieldModified

      boolean isFieldModified(String fieldId)
      Determina se o campo sofreu modificacao desde seu ultimo estado comitado
      Parameters:
      fieldId -
      Returns:
    • getModifiedFields

      Collection<String> getModifiedFields(String fieldId)
      Obtem uma relacao de todos os fields modificados
      Parameters:
      fieldId -
      Returns:
    • isFormModified

      boolean isFormModified()
      Retorna a analise de estado se o formulario foi alterado deste o utlimo commit
      Returns:
    • getLoggedUser

      UsuarioDTO getLoggedUser()
      Acesso ao usuario logado
      Returns:
    • getWidgetController

      WidgetController getWidgetController(String id)
      Obtem o acesso ao controlador de widget, via ID
      Parameters:
      id -
      Returns:
      Controlador do Widget ou Nulo caso nao exista
    • getProcessVariables

      Map<String,Object> getProcessVariables()
      Acesso as variaveis do processo
      Returns:
    • setGlobalVariable

      void setGlobalVariable(String key, Object value)
      Seta uma variavel com escopo na instancia do formulario vigente. Essa variavel nao sera persistida
      Parameters:
      key -
      value -
    • unsetGlobalVariable

      void unsetGlobalVariable(String key)
      Remove a variavel do escopo
      Parameters:
      key -
    • isGlobalVariableSet

      boolean isGlobalVariableSet(String key)
      Determina se a variavel global existe
      Parameters:
      key -
      Returns:
    • getGlobalVariable

      Object getGlobalVariable(String key)
      Acessa uma variavel global definida no escopo da engine do formulario
      Parameters:
      key -
      Returns:
    • hasContextData

      boolean hasContextData(String key)
      Determina se existem informacoes de contexto identificadas pela KEY
      Parameters:
      key -
      Returns:
    • getContextData

      Object getContextData(String key)
      Coleta os dados de contexto que podem ter qualquer formato ou nulo se nao existirem (ou forem realmente nulos)
      Parameters:
      key -
      Returns:
    • setCancelEnabled

      void setCancelEnabled(boolean enabled)
      Informa para a engine se e permitido cancelar o form atual
      Parameters:
      enabled -
    • isCancelEnabled

      boolean isCancelEnabled()
      Verifica se a engine permite neste momento o cancelamento do form
      Returns:
    • setSaveEnabled

      void setSaveEnabled(boolean enabled)
    • isSaveEnabled

      boolean isSaveEnabled()
    • setFinishEnabled

      void setFinishEnabled(boolean enabled)
    • isFinishEnabled

      boolean isFinishEnabled()
    • debug

      void debug(Object object)
    • commitAndGetFormData

      D commitAndGetFormData()
    • getFormData

      D getFormData()
    • registerRepeatingTimer

      ClientSideTimerExtension registerRepeatingTimer(int miliSeconds, Runnable runnable)
      Registra um timer para execucao de comandos com repeticao. E responsabilidade de quem invocar este metodo da engine controlar a parada do timer, exceto se a interface for desligada, quando a engine ira interromper automaticamente
      Parameters:
      miliSeconds -
      runnable -
      Returns:
    • registerTimerCommand

      ClientSideTimerExtension registerTimerCommand(int miliSeconds, Runnable runnable)
      Registra um timer para execucao de um comando, uma unica vez. Este timer nao devera ser reusado pois ele sera destruido assim que o comando for executado
      Parameters:
      miliSeconds -
      runnable -
      Returns:
    • updateUI

      void updateUI(Runnable runnable)
      Metodos que executam tarefas em background, podem necessitar atualizar a UI de referencia da Engine. Neste caso, qualquer atualizacao deve ser realizada dentro de um bloco seguro que pode locar a interface para garantir o correto envio das alteracoes para o Browser
      Parameters:
      runnable -
    • close

      boolean close()
      Caso o presenter esteja disposto em uma janela, solicita o fechamento do mesmo
      Returns:
      se a janela foi fechada
    • close

      boolean close(boolean forceClose)
      Caso o presenter esteja disposto em uma janela, solicita o fechamento do mesmo
      Parameters:
      forceClose - fecha o presenter ignorando qualquer confirmacao que possa ser necessaria
      Returns:
      se o presenter foi fechado
    • executeClientSideJavaScript

      void executeClientSideJavaScript(String script)
      Executa o comando javascript no browser host do vitruvio
      Parameters:
      script -
    • setStrictMode

      void setStrictMode(boolean strict)
      Configura a engine em modo estrito.
      Parameters:
      strict - - Quando falso (padrao), a engine sera leniente com chamadas de metodo problematicas, como coletar fields que nao existem, etc
    • isStrictMode

      boolean isStrictMode()
      Determina o estado da engine
      Returns:
    • isMobile

      boolean isMobile()
    • isWeb

      boolean isWeb()
    • isTouchDevice

      boolean isTouchDevice()
    • setZoom

      void setZoom(double zoom)
    • buildEngineContextInfo

      String buildEngineContextInfo()
      Constroi uma String informando detalhes sobre o contexto da engine
      Returns:
    • getFormDebugMode

      FormDebugMode getFormDebugMode()
      Handler de output info
    • getFormDebugOutput

      FormDebugOutput getFormDebugOutput()
    • getFormDebugFormat

      FormDebugFormat getFormDebugFormat()
    • handleDebugInfo

      void handleDebugInfo(String data)
    • isForInitialized

      boolean isForInitialized()
    • openUrl

      void openUrl(String url)
    • executeUrl

      void executeUrl(String url)
    • downloadUrl

      void downloadUrl(String url)
    • openUrlCurrentWindow

      void openUrlCurrentWindow(String url)
    • registerAttachmentProvider

      void registerAttachmentProvider(AttachmentProvider provider)
    • unregisterAttachmentProvider

      void unregisterAttachmentProvider(AttachmentProvider provider)
    • getAttachmentProviders

      Collection<AttachmentProvider> getAttachmentProviders()
    • makeResponsive

      void makeResponsive(Layout l)
    • setResponsiveMobile

      void setResponsiveMobile()