// Copyright (c) 2005 DMTF. All rights reserved. [Version ( "2.10.0" ), UMLPackagePath ( "CIM::Device::StorageStatistics" ), Description ( "A subclass of StatisticsService that provides services for " "filtering and retrieving statistics from a " "StatisticsManifestCollection that contains instances of " "BlockStatisticalData." )] class CIM_BlockStatisticsService : CIM_StatisticsService { [Description ( "Retrieves statistics in a well-defined bulk format. The " "collection of statistics returned is determined by the " "list of element types passed in to the method and the " "manifests for those types contained in the supplied " "BlockStatisticsManifestCollection. If both the Elements " "and BlockStatisticsManifestCollection parameters are " "supplied, then the types of elements returned is an " "intersection of the element types listed in the Elements " "parameter and the types for which " "BlockStatisticsManifest instances exist in the supplied " "BlockStatisticsManifestCollection. The statistics are " "returned through a well-defined array of strings, whose " "format is specified by the StatisticsFormat parameter, " "that can be parsed to retrieve the desired statistics as " "well as limited information about the elements that " "those metrics describe." ), ValueMap { "0", "1", "2", "3", "4", "5", "..", "4096", "4097", "4098", "4099..32767", "32768..65535" }, Values { "Job Completed with No Error", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "Method Reserved", "Method Parameters Checked - Job Started", "Element Not Supported", "Statistics Format Not Supported", "Method Reserved", "Vendor Specific" }] uint32 GetStatisticsCollection( [IN ( false ), OUT, Description ( "Reference to the job (may be null if job completed)." )] CIM_ConcreteJob REF Job, [IN, Description ( "Element types for which statistics should be " "returned. If not supplied (i.e. parameter is null) " "this parameter is not considered when filtering " "the instances of StatisticalData that will " "populate the Statistics output parameter. If the " "array is not null, but is empty, then no " "statistics will be returned by this method. A " "client SHOULD NOT specify this parameter if it is " "not meaningful (i.e. the service only provides " "statistics for a single type of element)." ), ValueMap { "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "..", "0x8000.." }, Values { "Computer System", "Front-end Computer System", "Peer Computer System", "Back-end Computer System", "Front-end Port", "Back-end Port", "Volume", "Extent", "Disk Drive", "Arbitrary LUs", "Remote Replica Group", "DMTF Reserved", "Vendor Specific" }, ModelCorrespondence { "CIM_BlockStorageStatisticalData.ElementType" }] uint16 ElementTypes[], [IN, Description ( "The BlockStatisticsManifestCollection that " "contains the manifests that list the metrics to be " "returned for each element type. If not supplied " "(i.e. parameter is null), then all available " "statistics will be returned unfiltered. Only " "elements that match the element type properties " "(if meaningful) of the BlockStatisticsManifest " "instances contained within the " "BlockStatisticsManifestCollection will have data " "returned by this method. If the supplied " "BlockStatisticsManifestCollection does not contain " "any BlockStatisticsManifest instances, then no " "statistics will be returned by this method." )] CIM_BlockStatisticsManifestCollection REF ManifestCollection, [IN, Description ( "Specifies the format of the Statistics output " "parameter. \n" "- CSV = Comma Separated Values." ), ValueMap { "0", "1", "2", "..", "0x8000.." }, Values { "Unknown", "Other", "CSV", "DMTF Reserved", "Vendor Specific" }] uint16 StatisticsFormat, [OUT, Description ( "The statistics for all the elements as determined " "by the Elements, ManifestCollection parameters, " "and StatisticsFormat parameters." ), ModelCorrespondence { "CIM_BlockStatisticsService.GetStatisticsCollection(ElementTypes)", "CIM_BlockStatisticsService.GetStatisticsCollection(ManifestCollection)", "CIM_BlockStatisticsService.GetStatisticsCollection(StatisticsFormat)" }] string Statistics[]); [Description ( "Creates a new BlockStatisticsManifestCollection " "instance, whose members can serve as a filter for " "metrics retrieved through the GetStatisticsCollection " "method." ), ValueMap { "0", "1", "2", "3", "4", "5", "6..32767", "32768..65535" }, Values { "Ok", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "Method Reserved", "Vendor Specific" }] uint32 CreateManifestCollection( [IN, Description ( "The collection of statistics that will be filtered " "using the new BlockStatisticsManifestCollection." )] CIM_StatisticsCollection REF Statistics, [IN, Description ( "Client-defined name for the new " "BlockStatisticsManifestCollection." )] string ElementName, [OUT, Description ( "Reference to the new BlockStatisticsManifestCollection." )] CIM_BlockStatisticsManifestCollection REF ManifestCollection); [Description ( "Method that creates or modifies a " "BlockStatisticsManifest for this statistics service. A " "client supplies a BlockStatisticsManifestCollection in " "which the new BlockStatisticsManifest will be placed or " "an existing BlockStatisticsManifest will be modified, " "the element type of the statistics that the " "BlockStatisticsManifest will filter, and a list of " "metrics, which serves as a filter for statistical data " "of that element type." ), ValueMap { "0", "1", "2", "3", "4", "5", "..", "4096", "4097", "4098", "4099..32767", "32768..65535" }, Values { "Success", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "Method Reserved", "Element Not Supported", "Metric not supported", "ElementType Parameter Missing", "Method Reserved", "Vendor Specific" }] uint32 AddOrModifyManifest( [IN, Description ( "BlockStatisticsManifestCollection that the " "BlockStatisticsManifest is or should be a member " "of." )] CIM_BlockStatisticsManifestCollection REF ManifestCollection, [IN, Description ( "The type of elements whose statistics the " "BlockStatisticsManifest will filter." ), ValueMap { "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "..", "0x8000.." }, Values { "Computer System", "Front-end Computer System", "Peer Computer System", "Back-end Computer System", "Front-end Port", "Back-end Port", "Volume", "Extent", "Disk Drive", "Arbitrary LUs", "Remote Replica Group", "Computer System Rate", "Front-end Computer System Rate", "Peer Computer System Rate", "Back-end Computer System Rate", "Front-end Port Rate", "Back-end Port Rate", "Volume Rate", "Extent Rate", "Disk Drive Rate", "Arbitrary LUs Rate", "Remote Replica Group Rate", "DMTF Reserved", "Vendor Specific" }, ModelCorrespondence { "CIM_BlockStatisticsManifest.ElementType" }] uint16 ElementType, [IN, Description ( "A client-defined string that identifies the " "BlockStatisticsManifest created or modified by " "this method." )] string ElementName, [IN, Description ( "The metrics that will be included by the filter. " "The metrics supplied here are the properties of " "CIM_StatisticalData or one of its subclasses that " "will remain after the BlockStatisticsManifest " "filter is applied." )] string StatisticsList[], [OUT, Description ( "The BlockStatisticsManifest that is created or " "modified on successful execution of the method." )] CIM_BlockStatisticsManifest REF Manifest); [Description ( "Extrinsic method that removes manifests from a " "BlockStatisticsManifestCollection." ), ValueMap { "0", "1", "2", "3", "4", "5", "..", "4096", "4097..32767", "32768..65535" }, Values { "Success", "Not Supported", "Unknown", "Timeout", "Failed", "Invalid Parameter", "Method Reserved", "Manifest not found", "Method Reserved", "Vendor Specific" }] uint32 RemoveManifests( [IN, Description ( "BlockStatisticsManifestCollection from which the " "BlockStatisticsManifests will be removed." )] CIM_BlockStatisticsManifestCollection REF ManifestCollection, [IN, Description ( "List of BlockStatisticsManifests to be removed " "from the BlockStatisticsManifestCollection." )] CIM_BlockStatisticsManifest REF Manifests[]); };