Class PerfCounterWildcardQuery

java.lang.Object
oshi.util.platform.windows.PerfCounterWildcardQuery

@ThreadSafe
public final class PerfCounterWildcardQuery
extends java.lang.Object
Enables queries of Performance Counters using wild cards to filter instances
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Class Description
    static interface  PerfCounterWildcardQuery.PdhCounterWildcardProperty
    Contract for Counter Property Enums
  • Method Summary

    Modifier and Type Method Description
    static <T extends java.lang.Enum<T>>
    Pair<java.util.List<java.lang.String>,​java.util.Map<T,​java.util.List<java.lang.Long>>>
    queryInstancesAndValues​(java.lang.Class<T> propertyEnum, java.lang.String perfObject, java.lang.String perfWmiClass)
    Query the a Performance Counter using PDH, with WMI backup on failure, for values corresponding to the property enum.
    static <T extends java.lang.Enum<T>>
    Pair<java.util.List<java.lang.String>,​java.util.Map<T,​java.util.List<java.lang.Long>>>
    queryInstancesAndValuesFromPDH​(java.lang.Class<T> propertyEnum, java.lang.String perfObject)
    Query the a Performance Counter using PDH for values corresponding to the property enum.
    static <T extends java.lang.Enum<T>>
    Pair<java.util.List<java.lang.String>,​java.util.Map<T,​java.util.List<java.lang.Long>>>
    queryInstancesAndValuesFromWMI​(java.lang.Class<T> propertyEnum, java.lang.String wmiClass)
    Query the a Performance Counter using WMI for values corresponding to the property enum.

    Methods inherited from class java.lang.Object

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

    • queryInstancesAndValues

      public static <T extends java.lang.Enum<T>> Pair<java.util.List<java.lang.String>,​java.util.Map<T,​java.util.List<java.lang.Long>>> queryInstancesAndValues​(java.lang.Class<T> propertyEnum, java.lang.String perfObject, java.lang.String perfWmiClass)
      Query the a Performance Counter using PDH, with WMI backup on failure, for values corresponding to the property enum.
      Type Parameters:
      T - The enum type of propertyEnum
      Parameters:
      propertyEnum - An enum which implements PerfCounterQuery.PdhCounterProperty and contains the WMI field (Enum value) and PDH Counter string (instance and counter)
      perfObject - The PDH object for this counter; all counters on this object will be refreshed at the same time
      perfWmiClass - The WMI PerfData_RawData_* class corresponding to the PDH object
      Returns:
      An pair containing a list of instances and an EnumMap of the corresponding values indexed by propertyEnum on success, or an empty list and empty map if both PDH and WMI queries failed.
    • queryInstancesAndValuesFromPDH

      public static <T extends java.lang.Enum<T>> Pair<java.util.List<java.lang.String>,​java.util.Map<T,​java.util.List<java.lang.Long>>> queryInstancesAndValuesFromPDH​(java.lang.Class<T> propertyEnum, java.lang.String perfObject)
      Query the a Performance Counter using PDH for values corresponding to the property enum.
      Type Parameters:
      T - The enum type of propertyEnum
      Parameters:
      propertyEnum - An enum which implements PerfCounterQuery.PdhCounterProperty and contains the WMI field (Enum value) and PDH Counter string (instance and counter)
      perfObject - The PDH object for this counter; all counters on this object will be refreshed at the same time
      Returns:
      An pair containing a list of instances and an EnumMap of the corresponding values indexed by propertyEnum on success, or an empty list and empty map if the PDH query failed.
    • queryInstancesAndValuesFromWMI

      public static <T extends java.lang.Enum<T>> Pair<java.util.List<java.lang.String>,​java.util.Map<T,​java.util.List<java.lang.Long>>> queryInstancesAndValuesFromWMI​(java.lang.Class<T> propertyEnum, java.lang.String wmiClass)
      Query the a Performance Counter using WMI for values corresponding to the property enum.
      Type Parameters:
      T - The enum type of propertyEnum
      Parameters:
      propertyEnum - An enum which implements PerfCounterQuery.PdhCounterProperty and contains the WMI field (Enum value) and PDH Counter string (instance and counter)
      wmiClass - The WMI PerfData_RawData_* class corresponding to the PDH object
      Returns:
      An pair containing a list of instances and an EnumMap of the corresponding values indexed by propertyEnum on success, or an empty list and empty map if the WMI query failed.