Class PackageManagerHelper

java.lang.Object
io.wcm.tooling.commons.packmgr.PackageManagerHelper

public final class PackageManagerHelper extends Object
Common functionality for all mojos.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Prefix or error message from CRX HTTP interfaces when uploading a package that already exists.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    executePackageManagerMethodHtml(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
    Execute CRX HTTP Package manager method and get HTML response.
    void
    executePackageManagerMethodHtmlOutputResponse(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
    Execute CRX HTTP Package manager method and output HTML response.
    org.json.JSONObject
    executePackageManagerMethodJson(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
    Execute CRX HTTP Package manager method and parse JSON response.
    void
    executePackageManagerMethodStatus(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
    Execute CRX HTTP Package manager method and checks response status.
    org.jdom2.Document
    executePackageManagerMethodXml(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
    Execute CRX HTTP Package manager method and parse XML response.
    @Nullable org.apache.http.client.protocol.HttpClientContext
    Set up http client context with credentials for Felix console.
    @NotNull org.apache.http.impl.client.CloseableHttpClient
    Get HTTP client to be used for all communications (package manager and Felix console).
    @NotNull org.apache.http.client.protocol.HttpClientContext
    Set up http client context with credentials for CRX package manager.
    void
    waitForBundlesActivation(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context)
    Wait for bundles to become active.
    void
    waitForPackageManagerInstallStatusFinished(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context)
    Wait for package manager install status to become finished.
    void
    waitForSystemReady(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context)
    Wait for system ready status to get OK.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • CRX_PACKAGE_EXISTS_ERROR_MESSAGE_PREFIX

      public static final String CRX_PACKAGE_EXISTS_ERROR_MESSAGE_PREFIX
      Prefix or error message from CRX HTTP interfaces when uploading a package that already exists.
      See Also:
  • Constructor Details

    • PackageManagerHelper

      public PackageManagerHelper(PackageManagerProperties props)
      Parameters:
      props - Package manager properties
  • Method Details

    • getHttpClient

      @NotNull public @NotNull org.apache.http.impl.client.CloseableHttpClient getHttpClient()
      Get HTTP client to be used for all communications (package manager and Felix console).
      Returns:
      HTTP client
    • getPackageManagerHttpClientContext

      @NotNull public @NotNull org.apache.http.client.protocol.HttpClientContext getPackageManagerHttpClientContext()
      Set up http client context with credentials for CRX package manager.
      Returns:
      Http client context
    • getConsoleHttpClientContext

      @Nullable public @Nullable org.apache.http.client.protocol.HttpClientContext getConsoleHttpClientContext()
      Set up http client context with credentials for Felix console.
      Returns:
      Http client context. May be null of bundle status URL is set to "-".
    • executePackageManagerMethodJson

      public org.json.JSONObject executePackageManagerMethodJson(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
      Execute CRX HTTP Package manager method and parse JSON response.
      Parameters:
      httpClient - HTTP client
      context - HTTP client context
      method - Get or Post method
      Returns:
      JSON object
    • executePackageManagerMethodXml

      public org.jdom2.Document executePackageManagerMethodXml(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
      Execute CRX HTTP Package manager method and parse XML response.
      Parameters:
      httpClient - HTTP client
      context - HTTP client context
      method - Get or Post method
      Returns:
      XML document
    • executePackageManagerMethodHtml

      public String executePackageManagerMethodHtml(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
      Execute CRX HTTP Package manager method and get HTML response.
      Parameters:
      httpClient - HTTP client
      context - HTTP client context
      method - Get or Post method
      Returns:
      Response from HTML server
    • executePackageManagerMethodHtmlOutputResponse

      public void executePackageManagerMethodHtmlOutputResponse(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
      Execute CRX HTTP Package manager method and output HTML response.
      Parameters:
      httpClient - HTTP client
      context - HTTP client context
      method - Get or Post method
    • executePackageManagerMethodStatus

      public void executePackageManagerMethodStatus(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context, org.apache.http.client.methods.HttpRequestBase method)
      Execute CRX HTTP Package manager method and checks response status. If the response status is not 200 the call fails (after retrying).
      Parameters:
      httpClient - HTTP client
      context - HTTP client context
      method - Get or Post method
    • waitForBundlesActivation

      public void waitForBundlesActivation(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context)
      Wait for bundles to become active.
      Parameters:
      httpClient - HTTP client
      context - HTTP client context
    • waitForSystemReady

      public void waitForSystemReady(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context)
      Wait for system ready status to get OK.
      Parameters:
      httpClient - HTTP client
      context - HTTP client context
    • waitForPackageManagerInstallStatusFinished

      public void waitForPackageManagerInstallStatusFinished(org.apache.http.impl.client.CloseableHttpClient httpClient, org.apache.http.client.protocol.HttpClientContext context)
      Wait for package manager install status to become finished.
      Parameters:
      httpClient - HTTP client
      context - HTTP client context