Class GetMatchingPVs

  • All Implemented Interfaces:
    BPLAction

    public class GetMatchingPVs
    extends Object
    implements BPLAction
    Get matching PV's for this appliance. Specify one of pv or regex. If both are specified, we only apply the pv wildcard. If neither is specified, we return an empty list.
    1. pv - An optional argument that can contain a GLOB wildcard. We will return PVs that match this GLOB. For example, if pv=KLYS*, the server will return all PVs that start with the string KLYS.
    2. regex - An optional argument that can contain a Java regex wildcard. We will return PVs that match this regex. For example, if pv=KLYS.*, the server will return all PVs that start with the string KLYS.
    3. limit - An optional argument that specifies the number of matched PV's that are returned. If unspecified, we return 500 PV names. To get all the PV names, (potentially in the millions), set limit to -1.
    Author:
    mshankar
    • Constructor Detail

      • GetMatchingPVs

        public GetMatchingPVs()
    • Method Detail

      • getMatchingPVsInCluster

        public static List<String> getMatchingPVsInCluster​(ConfigService configService,
                                                           int limit,
                                                           String nameToMatch,
                                                           boolean includeExternalServers)
                                                    throws IOException
        Get a list of PV's being archived in this cluster
        Parameters:
        configService - ConfigService
        limit - The numbers of PV's you want to limit the response to;
        nameToMatch - A regex specifying the PV name pattern; globs should be converted to regex's
        includeExternalServers - - Do you want to include external servers
        Returns:
        mathcing PVs in the cluster
        Throws:
        IOException -  
      • includeExternalServers

        public static boolean includeExternalServers​(javax.servlet.http.HttpServletRequest req)
        To prevent infinite loops and such, we can specify that we do not proxy to external servers for this data retrieval request.
        Parameters:
        req - HttpServletRequest
        Returns:
        boolean True or False