Class PropertyDeploymentConfiguration

All Implemented Interfaces:
DeploymentConfiguration, AbstractConfiguration, Serializable
Direct Known Subclasses:
DefaultDeploymentConfiguration

public class PropertyDeploymentConfiguration extends AbstractDeploymentConfiguration
The property handling implementation of DeploymentConfiguration based on a base class for resolving system properties and a set of init parameters.
Since:
1.2
See Also:
  • Constructor Details

    • PropertyDeploymentConfiguration

      public PropertyDeploymentConfiguration(ApplicationConfiguration parentConfig, Class<?> systemPropertyBaseClass, Properties initParameters)
      Create a new property deployment configuration instance.
      Parameters:
      parentConfig - a parent application configuration
      systemPropertyBaseClass - the class that should be used as a basis when reading system properties
      initParameters - the init parameters that should make up the foundation for this configuration
  • Method Details

    • getSystemProperty

      protected String getSystemProperty(String parameterName)
      Gets an system property value.
      Overrides:
      getSystemProperty in class AbstractPropertyConfiguration
      Parameters:
      parameterName - the Name or the parameter.
      Returns:
      String value or null if not found
    • getApplicationProperty

      public String getApplicationProperty(String parameterName)
      Gets an application property value.
      Overrides:
      getApplicationProperty in class AbstractPropertyConfiguration
      Parameters:
      parameterName - the Name or the parameter.
      Returns:
      String value or null if not found
    • isProductionMode

      public boolean isProductionMode()
      Description copied from interface: AbstractConfiguration
      Returns whether Vaadin is in production mode.
      Returns:
      true if in production mode, false otherwise.
    • frontendHotdeploy

      public boolean frontendHotdeploy()
      Description copied from interface: AbstractConfiguration
      Get if the dev server should be enabled. false by default as a development bundle is used.
      Returns:
      true if dev server should be used
    • isPnpmEnabled

      public boolean isPnpmEnabled()
      Description copied from interface: AbstractConfiguration
      Returns whether pnpm is enabled or not.
      Returns:
      true if enabled, false if not
    • isUsageStatisticsEnabled

      public boolean isUsageStatisticsEnabled()
      Description copied from interface: AbstractConfiguration
      Returns whether development time usage statistics collection is enabled or not. Always return false if isProductionMode is true.
      Returns:
      true if enabled, false if not collected.
      See Also:
    • isGlobalPnpm

      public boolean isGlobalPnpm()
      Description copied from interface: AbstractConfiguration
      Returns whether globally installed pnpm is used or the default one (see FrontendTools.DEFAULT_PNPM_VERSION).
      Returns:
      true if globally installed pnpm is used, false if the default one is used.
    • reuseDevServer

      public boolean reuseDevServer()
      Description copied from interface: AbstractConfiguration
      Get if the dev server should be reused on each reload. True by default, set it to false in tests so as dev server is not kept as a daemon after the test.
      Returns:
      true if dev server should be reused
    • isRequestTiming

      public boolean isRequestTiming()
      Description copied from interface: DeploymentConfiguration
      Returns whether the server provides timing info to the client.
      Returns:
      true if timing info is provided, false otherwise.
    • isXsrfProtectionEnabled

      public boolean isXsrfProtectionEnabled()
      Description copied from interface: AbstractConfiguration
      Returns whether cross-site request forgery protection is enabled.
      Returns:
      true if XSRF protection is enabled, false otherwise.
    • getBuildFolder

      public String getBuildFolder()
      Description copied from interface: AbstractConfiguration
      Return the defined build folder for the used build system.

      Default value is target used by maven and the gradle plugin will set it to build.

      Returns:
      build folder name, default target
    • getJavaResourceFolder

      public File getJavaResourceFolder()
      Description copied from interface: AbstractConfiguration
      Gets the folder where resource sources are stored.

      Only available in development mode.

      Returns:
      the folder where resources are stored, typically src/main/resources.
    • getJavaSourceFolder

      public File getJavaSourceFolder()
      Description copied from interface: AbstractConfiguration
      Gets the folder where sources are stored.

      Only available in development mode.

      Returns:
      the folder where source files are stored, typically src/main/java.
    • isSyncIdCheckEnabled

      public boolean isSyncIdCheckEnabled()
      Description copied from interface: DeploymentConfiguration
      Returns whether sync id checking is enabled. The sync id is used to gracefully handle situations when the client sends a message to a connector that has recently been removed on the server.
      Returns:
      true if sync id checking is enabled; false otherwise
    • getHeartbeatInterval

      public int getHeartbeatInterval()
      Description copied from interface: DeploymentConfiguration
      Returns the number of seconds between heartbeat requests of a UI, or a non-positive number if heartbeat is disabled.
      Returns:
      The time between heartbeats.
    • getMaxMessageSuspendTimeout

      public int getMaxMessageSuspendTimeout()
      Description copied from interface: DeploymentConfiguration
      In certain cases, such as when combining XmlHttpRequests and push over low bandwidth connections, messages may be received out of order by the client. This property specifies the maximum time (in milliseconds) that the client will then wait for the predecessors of a received out-order message, before considering them missing and requesting a full resynchronization of the application state from the server.
      Returns:
      The maximum message suspension timeout
    • getWebComponentDisconnect

      public int getWebComponentDisconnect()
      Description copied from interface: DeploymentConfiguration
      Returns the number of seconds that a WebComponent will wait for a reconnect before removing the server-side component from memory.
      Returns:
      time to wait after a disconnect has happened
    • isSendUrlsAsParameters

      public boolean isSendUrlsAsParameters()
      Description copied from interface: DeploymentConfiguration
      Returns whether the sending of URL's as GET and POST parameters in requests with content-type application/x-www-form-urlencoded is enabled or not.
      Returns:
      false if set to false or true otherwise
    • isCloseIdleSessions

      public boolean isCloseIdleSessions()
      Description copied from interface: DeploymentConfiguration
      Returns whether a Vaadin session should be closed when all its open UIs have been idle for longer than its configured maximum inactivity time.

      A UI is idle if it is open on the client side but has no activity other than heartbeat requests. If isCloseIdleSessions() == false, heartbeat requests cause the session to stay open for as long as there are open UIs on the client side. If it is true, the session is eventually closed if the open UIs do not have any user interaction.

      Returns:
      True if UIs and Vaadin sessions receiving only heartbeat requests are eventually closed; false if heartbeat requests extend UI and session lifetime indefinitely.
      See Also:
    • getPushMode

      public PushMode getPushMode()
      Description copied from interface: DeploymentConfiguration
      Returns the mode of bidirectional ("push") client-server communication that should be used.
      Returns:
      The push mode in use.
    • getInitParameters

      public Properties getInitParameters()
      Description copied from interface: DeploymentConfiguration
      Gets the properties configured for the deployment, e.g. as init parameters to the servlet.
      Returns:
      properties for the application.
    • isDevModeLiveReloadEnabled

      public boolean isDevModeLiveReloadEnabled()
      Description copied from interface: DeploymentConfiguration
      Checks if dev mode live reload is enabled or not.

      Note that if the dev tools are disabled (DeploymentConfiguration.isDevToolsEnabled() returns false), the live reload will be disabled as well.

      Returns:
      true if dev mode live reload is enabled, false otherwise
    • isDevToolsEnabled

      public boolean isDevToolsEnabled()
      Description copied from interface: DeploymentConfiguration
      Checks if dev tools are enabled or not. They is always disabled in production mode. In development mode, it is enabled by default.
      Returns:
      true if dev tools are enabled, false otherwise
    • isOwnProperty

      protected boolean isOwnProperty(String property)
      Checks whether the given property is the property explicitly set in this deployment configuration (not in it's parent config).

      The deployment configuration consists of properties defined in the configuration itself and properties which are coming from the application configuration. The properties which are defined in the deployment configuration itself (own properties) should take precedence: their values should override the parent config properties values.

      Parameters:
      property - a property name
      Returns:
      whether the property is explicitly set in the configuration
    • getParentConfiguration

      protected ApplicationConfiguration getParentConfiguration()
      Returns parent application configuration.
      Returns:
      the parent config