1 /*
2 (C) Copyright IBM Corp. 2006, 2010
3
4 THIS FILE IS PROVIDED UNDER THE TERMS OF THE ECLIPSE PUBLIC LICENSE
5 ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE
6 CONSTITUTES RECIPIENTS ACCEPTANCE OF THE AGREEMENT.
7
8 You can obtain a current copy of the Eclipse Public License from
9 http://www.opensource.org/licenses/eclipse-1.0.php
10
11 @author : Endre Bak, ebak@de.ibm.com
12 *
13 * Flag Date Prog Description
14 * -------------------------------------------------------------------------------
15 * 1565892 2006-10-06 ebak Make SBLIM client JSR48 compliant
16 * 2003590 2008-06-30 blaschke-oss Change licensing from CPL to EPL
17 * 2524131 2009-01-21 raman_arora Upgrade client to JDK 1.5 (Phase 1)
18 * 2797550 2009-06-01 raman_arora JSR48 compliance - add Java Generics
19 * 2935258 2010-01-22 blaschke-oss Sync up javax.cim.* javadoc with JSR48 1.0.0
20 */
21
22 package org.metricshub.wbem.javax.cim;
23
24 /*-
25 * ╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲
26 * WBEM Java Client
27 * ჻჻჻჻჻჻
28 * Copyright 2023 - 2025 MetricsHub
29 * ჻჻჻჻჻჻
30 * Licensed under the Apache License, Version 2.0 (the "License");
31 * you may not use this file except in compliance with the License.
32 * You may obtain a copy of the License at
33 *
34 * http://www.apache.org/licenses/LICENSE-2.0
35 *
36 * Unless required by applicable law or agreed to in writing, software
37 * distributed under the License is distributed on an "AS IS" BASIS,
38 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
39 * See the License for the specific language governing permissions and
40 * limitations under the License.
41 * ╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱╲╱
42 */
43
44 //Sync'd against JSR48 1.0.0 javadoc (build 1.5.0_10) on Wed Jan 20 02:20:59 EST 2010
45 /**
46 * The <code>CIMQualifiedElementInterface</code> is used by CIM Elements that
47 * have qualifiers. For example, CIM Classes, CIM Properties, CIM Methods and
48 * CIM Parameters are all CIM Elements that have qualifiers.
49 */
50 public interface CIMQualifiedElementInterface {
51 /**
52 * Get a qualifier by index.
53 *
54 * @param pIndex
55 * The index of the qualifier.
56 * @return The Qualifier at index <code>pIndex</code>.
57 */
58 public CIMQualifier<?> getQualifier(int pIndex);
59
60 /**
61 * Gets a qualifier by name.
62 *
63 * @param pName
64 * The name of the qualifier to get.
65 * @return <code>null</code> if the qualifier does not exist, otherwise
66 * returns the reference to the qualifier.
67 */
68 public CIMQualifier<?> getQualifier(String pName);
69
70 /**
71 * Get the number of qualifiers defined for this CIM Element.
72 *
73 * @return The number of qualifiers.
74 */
75 public int getQualifierCount();
76
77 /**
78 * Returns the list of qualifiers for this class.
79 *
80 * @return Qualifiers for this class.
81 */
82 public CIMQualifier<?>[] getQualifiers();
83
84 /**
85 * Gets a qualifier value by name.
86 *
87 * @param pName
88 * The name of the qualifier to get.
89 * @return <code>null</code> if the qualifier does not exist or value is
90 * <code>null</code>, otherwise returns the reference to the
91 * qualifier.
92 */
93 public Object getQualifierValue(String pName);
94
95 /**
96 * Checks whether the specified qualifier is one of the qualifiers in this
97 * CIM element.
98 *
99 * @param pName
100 * The name of the qualifier.
101 * @return <code>true</code> if the qualifier exists in this CIM element,
102 * otherwise <code>false</code>.
103 */
104 public boolean hasQualifier(String pName);
105
106 /**
107 * Checks whether the specified qualifier is one of the qualifiers defined
108 * for this property with the specified value. This method will return
109 * <code>false</code> if the qualifier is not applied or if the value does
110 * not match.
111 *
112 * @param pName
113 * The name of the qualifier.
114 * @param pValue
115 * The value to be tested.
116 * @return <code>true</code> if the qualifier exists and has the value,
117 * otherwise <code>false</code>.
118 */
119 public boolean hasQualifierValue(String pName, Object pValue);
120 }