Class PackageUtils


  • public class PackageUtils
    extends Object
    • Field Detail

      • LATEST

        public static String LATEST
        Represents a version which denotes the latest version available at the moment.
      • PACKAGE_PATH

        public static String PACKAGE_PATH
      • CLUSTER_PLUGINS_PATH

        public static String CLUSTER_PLUGINS_PATH
      • REPOSITORIES_ZK_PATH

        public static String REPOSITORIES_ZK_PATH
      • CLUSTERPROPS_PATH

        public static String CLUSTERPROPS_PATH
      • BLACK

        public static String BLACK
      • RED

        public static String RED
      • GREEN

        public static String GREEN
      • YELLOW

        public static String YELLOW
      • BLUE

        public static String BLUE
      • PURPLE

        public static String PURPLE
      • CYAN

        public static String CYAN
      • WHITE

        public static String WHITE
    • Constructor Detail

      • PackageUtils

        public PackageUtils()
    • Method Detail

      • jsonPathConfiguration

        public static com.jayway.jsonpath.Configuration jsonPathConfiguration()
      • getMapper

        public static com.fasterxml.jackson.databind.ObjectMapper getMapper()
      • postFile

        public static void postFile​(org.apache.solr.client.solrj.SolrClient client,
                                    ByteBuffer buffer,
                                    String name,
                                    String sig)
                             throws org.apache.solr.client.solrj.SolrServerException,
                                    IOException
        Uploads a file to the package store / file store of Solr.
        Parameters:
        client - A Solr client
        buffer - File contents
        name - Name of the file as it will appear in the file store (can be hierarchical)
        sig - Signature digest (public key should be separately uploaded to ZK)
        Throws:
        org.apache.solr.client.solrj.SolrServerException
        IOException
      • getJson

        public static <T> T getJson​(org.apache.solr.client.solrj.SolrClient client,
                                    String path,
                                    Class<T> klass)
        Download JSON from a Solr url and deserialize into klass.
      • getFileFromJarsAsString

        public static String getFileFromJarsAsString​(List<Path> jars,
                                                     String filename)
        Search through the list of jar files for a given file. Returns string of the file contents or null if file wasn't found. This is suitable for looking for manifest or property files within pre-downloaded jar files. Please note that the first instance of the file found is returned.
      • getJsonStringFromUrl

        public static String getJsonStringFromUrl​(org.apache.solr.client.solrj.SolrClient client,
                                                  String path,
                                                  org.apache.solr.common.params.SolrParams params)
        Returns JSON string from a given Solr URL
      • fetchManifest

        public static SolrPackage.Manifest fetchManifest​(org.apache.solr.client.solrj.SolrClient solrClient,
                                                         String manifestFilePath,
                                                         String expectedSHA512)
                                                  throws IOException,
                                                         org.apache.solr.client.solrj.SolrServerException
        Fetches a manifest file from the File Store / Package Store. A SHA512 check is enforced after fetching.
        Throws:
        IOException
        org.apache.solr.client.solrj.SolrServerException
      • resolve

        public static String resolve​(String str,
                                     Map<String,​String> defaults,
                                     Map<String,​String> overrides,
                                     Map<String,​String> systemParams)
        Replace a templatized string with parameter substituted string. First applies the overrides, then defaults and then systemParams.
      • printGreen

        public static void printGreen​(Object message)
        Console print using green color
      • printRed

        public static void printRed​(Object message)
        Console print using red color
      • print

        public static void print​(Object message)
      • print

        public static void print​(String color,
                                 Object message)
      • validateCollections

        public static String[] validateCollections​(String[] collections)
      • getCollectionParamsPath

        public static String getCollectionParamsPath​(String collection)