Class PsaRstApiUti


  • public final class PsaRstApiUti
    extends java.lang.Object
    REST API: utilities
    Since:
    20.06.2023
    Author:
    weiland
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String EVT_TPL_BLB
      BLOB: event template class
      static java.lang.String HEADER_AUTHORIZATION
      HTTP Authorization header key
      static java.lang.String OBJ_TPL_BLB
      BLOB: object template class
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.lang.String dateFromCubes​(java.lang.String string)
      Convert a PisaCubes date to a string that can be used for the JSON
      static java.lang.String dateFromCubes​(java.lang.String string, boolean timezone)
      Convert a PisaCubes date to a string that can be used for the JSON
      static java.lang.String dateToCubes​(java.lang.String string)
      Convert a JSON date to a PisaCubes date
      static java.lang.String generateImplementation​(de.pisa.psc.srv.glb.PscSsn ssn, java.lang.String blob, PsaRstApiUti.ImplementationParameter parameter)
      generate an implementation
      static java.util.Optional<de.pisa.psa.ifc.PsaDtoDat> getConfig​(de.pisa.psc.srv.glb.PscSsn ssn, java.lang.String cnf_gid)
      Get a configuration record
      static java.lang.String getDtoTitle​(de.pisa.psc.srv.glb.PscSsn ssn, java.lang.String dto)
      get the English title for a data object
      static java.util.Optional<de.pisa.psa.ifc.PsaDtoDat> getEvent​(de.pisa.psc.srv.glb.PscSsn ssn, java.lang.String evt_gid)
      Get an event record
      static java.util.Optional<de.pisa.psa.ifc.PsaDtoDat> getKey​(de.pisa.psc.srv.glb.PscSsn ssn, java.lang.String key_gid)
      get a key record
      static HeaderMap getMultivaluedStringMap​(java.lang.String json)
      convert a JSON into a multi valued string map (String to a list of strings)
      static java.lang.String getSourceBlob​(de.pisa.psc.srv.glb.PscSsn ssn, java.lang.String blob)
      get source code from a BLOB
      static de.pisa.psc.srv.svc.MapToList<java.lang.String,​java.lang.String> getUrlQueryParameter​(java.lang.String url)
      get the query parameter from an URL
      static java.lang.String validUrlPath​(java.lang.String path)
      Make sure only valid characters are in an URL path.
      • Methods inherited from class java.lang.Object

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

      • EVT_TPL_BLB

        public static final java.lang.String EVT_TPL_BLB
        BLOB: event template class
        See Also:
        Constant Field Values
      • OBJ_TPL_BLB

        public static final java.lang.String OBJ_TPL_BLB
        BLOB: object template class
        See Also:
        Constant Field Values
      • HEADER_AUTHORIZATION

        public static final java.lang.String HEADER_AUTHORIZATION
        HTTP Authorization header key
        See Also:
        Constant Field Values
    • Method Detail

      • dateFromCubes

        public static java.lang.String dateFromCubes​(java.lang.String string)
                                              throws java.text.ParseException
        Convert a PisaCubes date to a string that can be used for the JSON
        Parameters:
        string - PisaCubes date
        Returns:
        UTC date as string in the format yyyy-MM-ddTHH:mm:ssZ
        Throws:
        java.text.ParseException
      • dateFromCubes

        public static java.lang.String dateFromCubes​(java.lang.String string,
                                                     boolean timezone)
                                              throws java.text.ParseException
        Convert a PisaCubes date to a string that can be used for the JSON
        Parameters:
        string - PisaCubes date
        timezone - add the timezone Z to the string?
        Returns:
        UTC date as string in the format yyyy-MM-ddTHH:mm:ssZ
        Throws:
        java.text.ParseException
      • dateToCubes

        public static java.lang.String dateToCubes​(java.lang.String string)
        Convert a JSON date to a PisaCubes date
        Parameters:
        string - JSON date
        Returns:
        PisaCubes date
      • getConfig

        public static java.util.Optional<de.pisa.psa.ifc.PsaDtoDat> getConfig​(de.pisa.psc.srv.glb.PscSsn ssn,
                                                                              java.lang.String cnf_gid)
                                                                       throws java.lang.Exception
        Get a configuration record
        Parameters:
        ssn - session
        cnf_gid - PSC_GID of the configuration record
        Returns:
        data
        Throws:
        java.lang.Exception
      • getKey

        public static java.util.Optional<de.pisa.psa.ifc.PsaDtoDat> getKey​(de.pisa.psc.srv.glb.PscSsn ssn,
                                                                           java.lang.String key_gid)
                                                                    throws java.lang.Exception
        get a key record
        Parameters:
        ssn - session
        key_gid - PSC_GID of the key record
        Returns:
        data
        Throws:
        java.lang.Exception
      • getEvent

        public static java.util.Optional<de.pisa.psa.ifc.PsaDtoDat> getEvent​(de.pisa.psc.srv.glb.PscSsn ssn,
                                                                             java.lang.String evt_gid)
                                                                      throws java.lang.Exception
        Get an event record
        Parameters:
        ssn - session
        evt_gid - PSC_GID of the event record
        Returns:
        data
        Throws:
        java.lang.Exception
      • getSourceBlob

        public static java.lang.String getSourceBlob​(de.pisa.psc.srv.glb.PscSsn ssn,
                                                     java.lang.String blob)
                                              throws java.lang.Exception
        get source code from a BLOB
        Parameters:
        ssn - session
        blob - name of the BLOB
        Returns:
        source code
        Throws:
        java.lang.Exception
      • generateImplementation

        public static java.lang.String generateImplementation​(de.pisa.psc.srv.glb.PscSsn ssn,
                                                              java.lang.String blob,
                                                              PsaRstApiUti.ImplementationParameter parameter)
                                                       throws java.lang.Exception
        generate an implementation
        Parameters:
        ssn - session
        blob - name of the BLOB
        parameter - implementation parameter
        Returns:
        source code
        Throws:
        java.lang.Exception
      • getUrlQueryParameter

        public static de.pisa.psc.srv.svc.MapToList<java.lang.String,​java.lang.String> getUrlQueryParameter​(java.lang.String url)
        get the query parameter from an URL
        Parameters:
        url - URL to parse
        Returns:
        map with keys and values
      • getMultivaluedStringMap

        public static HeaderMap getMultivaluedStringMap​(java.lang.String json)
                                                 throws com.fasterxml.jackson.core.JsonProcessingException
        convert a JSON into a multi valued string map (String to a list of strings)
        Parameters:
        json - JSON to parse
        Returns:
        map (never null)
        Throws:
        com.fasterxml.jackson.core.JsonProcessingException
      • validUrlPath

        public static java.lang.String validUrlPath​(java.lang.String path)
        Make sure only valid characters are in an URL path. Invalid characters will be replaced by a -
        Parameters:
        path - path to check
        Returns:
        the path with only the valid characters
      • getDtoTitle

        public static java.lang.String getDtoTitle​(de.pisa.psc.srv.glb.PscSsn ssn,
                                                   java.lang.String dto)
                                            throws java.lang.Exception
        get the English title for a data object
        Parameters:
        ssn - session
        dto - data object descriptor
        Returns:
        title
        Throws:
        java.lang.Exception