1*0Sstevel@tonic-gate/* 2*0Sstevel@tonic-gate * CDDL HEADER START 3*0Sstevel@tonic-gate * 4*0Sstevel@tonic-gate * The contents of this file are subject to the terms of the 5*0Sstevel@tonic-gate * Common Development and Distribution License, Version 1.0 only 6*0Sstevel@tonic-gate * (the "License"). You may not use this file except in compliance 7*0Sstevel@tonic-gate * with the License. 8*0Sstevel@tonic-gate * 9*0Sstevel@tonic-gate * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10*0Sstevel@tonic-gate * or http://www.opensolaris.org/os/licensing. 11*0Sstevel@tonic-gate * See the License for the specific language governing permissions 12*0Sstevel@tonic-gate * and limitations under the License. 13*0Sstevel@tonic-gate * 14*0Sstevel@tonic-gate * When distributing Covered Code, include this CDDL HEADER in each 15*0Sstevel@tonic-gate * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16*0Sstevel@tonic-gate * If applicable, add the following below this CDDL HEADER, with the 17*0Sstevel@tonic-gate * fields enclosed by brackets "[]" replaced with your own identifying 18*0Sstevel@tonic-gate * information: Portions Copyright [yyyy] [name of copyright owner] 19*0Sstevel@tonic-gate * 20*0Sstevel@tonic-gate * CDDL HEADER END 21*0Sstevel@tonic-gate */ 22*0Sstevel@tonic-gate/* 23*0Sstevel@tonic-gate * ident "%Z%%M% %I% %E% SMI" 24*0Sstevel@tonic-gate * Title CIM version 2.7 NFS dependencies. 25*0Sstevel@tonic-gate * Description CIM version 2.7 Solaris Network File System model dependencies. 26*0Sstevel@tonic-gate * Date 02/18/2003 27*0Sstevel@tonic-gate * Version 2.7 28*0Sstevel@tonic-gate * Copyright 2003 Sun Microsystems, Inc. All rights reserved. 29*0Sstevel@tonic-gate * Use is subject to license terms. 30*0Sstevel@tonic-gate */ 31*0Sstevel@tonic-gate 32*0Sstevel@tonic-gate#pragma namespace("root/cimv2") 33*0Sstevel@tonic-gate#pragma Locale ("en_US") 34*0Sstevel@tonic-gate#pragma namespace("__create") 35*0Sstevel@tonic-gate 36*0Sstevel@tonic-gate// ================================================================== 37*0Sstevel@tonic-gate// ManagedElement 38*0Sstevel@tonic-gate// ================================================================== 39*0Sstevel@tonic-gate[Abstract, Version ("2.7.0"), Description ( 40*0Sstevel@tonic-gate "ManagedElement is an abstract class that provides a common " 41*0Sstevel@tonic-gate "superclass (or top of the inheritance tree) for the " 42*0Sstevel@tonic-gate "non-association classes in the CIM Schema.") ] 43*0Sstevel@tonic-gateclass CIM_ManagedElement { 44*0Sstevel@tonic-gate 45*0Sstevel@tonic-gate [MaxLen (64), Description ( 46*0Sstevel@tonic-gate "The Caption property is a short textual description (one-" 47*0Sstevel@tonic-gate "line string) of the object.") ] 48*0Sstevel@tonic-gate string Caption; 49*0Sstevel@tonic-gate 50*0Sstevel@tonic-gate [Description ( 51*0Sstevel@tonic-gate "The Description property provides a textual description of " 52*0Sstevel@tonic-gate "the object.") ] 53*0Sstevel@tonic-gate string Description; 54*0Sstevel@tonic-gate 55*0Sstevel@tonic-gate [Description ( 56*0Sstevel@tonic-gate " A user-friendly name for the object. This property allows " 57*0Sstevel@tonic-gate "each instance to define a user-friendly name IN ADDITION TO its " 58*0Sstevel@tonic-gate "key properties/identity data, and description information. \n" 59*0Sstevel@tonic-gate " Note that ManagedSystemElement's Name property is also defined " 60*0Sstevel@tonic-gate "as a user-friendly name. But, it is often subclassed to be a " 61*0Sstevel@tonic-gate "Key. It is not reasonable that the same property can convey " 62*0Sstevel@tonic-gate "both identity and a user friendly name, without inconsistencies. " 63*0Sstevel@tonic-gate "Where Name exists and is not a Key (such as for instances of " 64*0Sstevel@tonic-gate "LogicalDevice), the same information MAY be present in both " 65*0Sstevel@tonic-gate "the Name and ElementName properties.") ] 66*0Sstevel@tonic-gate string ElementName; 67*0Sstevel@tonic-gate}; 68*0Sstevel@tonic-gate 69*0Sstevel@tonic-gate// ================================================================== 70*0Sstevel@tonic-gate// SettingData 71*0Sstevel@tonic-gate// =================================================================== 72*0Sstevel@tonic-gate[Abstract, Experimental, Version ("2.7.0"), Description ( 73*0Sstevel@tonic-gate " The SettingData class represents configuration-related and " 74*0Sstevel@tonic-gate "operational parameters for one or more ManagedElement(s). A " 75*0Sstevel@tonic-gate "ManagedElement may have multiple SettingData objects associated " 76*0Sstevel@tonic-gate "with it. The current operational values for an Element's " 77*0Sstevel@tonic-gate "parameters are reflected by properties in the Element itself or " 78*0Sstevel@tonic-gate "by properties in its associations. These properties do not have " 79*0Sstevel@tonic-gate "to be the same values present in the SettingData object. For " 80*0Sstevel@tonic-gate "example, a modem may have a SettingData baud rate of 56Kb/sec " 81*0Sstevel@tonic-gate "but be operating at 19.2Kb/sec. \n" 82*0Sstevel@tonic-gate " Note that the CIM_SettingData class is very similar to " 83*0Sstevel@tonic-gate "CIM_Setting, yet both classes are present in the model. This is " 84*0Sstevel@tonic-gate "because many implementations have successfully used CIM_Setting. " 85*0Sstevel@tonic-gate "However, issues have arisen that could not be resolved without " 86*0Sstevel@tonic-gate "defining a new class. Therefore, until a new major release " 87*0Sstevel@tonic-gate "occurs, both classes will exist in the model. Refer to the Core " 88*0Sstevel@tonic-gate "White Paper for additional information.") ] 89*0Sstevel@tonic-gateclass CIM_SettingData : CIM_ManagedElement { 90*0Sstevel@tonic-gate 91*0Sstevel@tonic-gate [Key, Description ( 92*0Sstevel@tonic-gate "InstanceID opaquely identifies a unique instance of " 93*0Sstevel@tonic-gate "SettingData. The InstanceID must be unique within a " 94*0Sstevel@tonic-gate "namespace. In order to ensure uniqueness, the value of " 95*0Sstevel@tonic-gate "InstanceID SHOULD be constructed in the following manner: \n" 96*0Sstevel@tonic-gate "<Vendor ID><ID> \n" 97*0Sstevel@tonic-gate " <Vendor ID> MUST include a copyrighted, trademarked " 98*0Sstevel@tonic-gate "or otherwise unique name that is owned by the business entity " 99*0Sstevel@tonic-gate "or a registered ID that is assigned to the business entity " 100*0Sstevel@tonic-gate "that is defining the InstanceID. (This is similar to the " 101*0Sstevel@tonic-gate "<Schema Name>_<Class Name> structure of Schema class names.) " 102*0Sstevel@tonic-gate "The purpose of <Vendor ID> is to ensure that <ID> is truly " 103*0Sstevel@tonic-gate "unique across multiple vendor implementations. If such a " 104*0Sstevel@tonic-gate "name is not used, the defining entity MUST assure that the " 105*0Sstevel@tonic-gate "<ID> portion of the Instance ID is unique when compared with " 106*0Sstevel@tonic-gate "other instance providers. For DMTF defined instances, the " 107*0Sstevel@tonic-gate "<Vendor ID> is 'CIM'. \n" 108*0Sstevel@tonic-gate " <ID> MUST include a vendor specified unique " 109*0Sstevel@tonic-gate "identifier.") ] 110*0Sstevel@tonic-gate string InstanceID; 111*0Sstevel@tonic-gate 112*0Sstevel@tonic-gate [Required, Description ( 113*0Sstevel@tonic-gate "The user friendly name for this instance of SettingData. " 114*0Sstevel@tonic-gate "In addition, the user friendly name can be used as a " 115*0Sstevel@tonic-gate "index property for a search of query. (Note: Name " 116*0Sstevel@tonic-gate "does not have to be unique within a namespace.)") ] 117*0Sstevel@tonic-gate string ElementName; 118*0Sstevel@tonic-gate}; 119*0Sstevel@tonic-gate 120*0Sstevel@tonic-gate// =================================================================== 121*0Sstevel@tonic-gate// Share 122*0Sstevel@tonic-gate// =================================================================== 123*0Sstevel@tonic-gate[Abstract, Experimental, Version ("2.7.0"), Description ( 124*0Sstevel@tonic-gate "A Share is representative of an object presented for use " 125*0Sstevel@tonic-gate "(or shared) across systems. Instances of CIM_Share are " 126*0Sstevel@tonic-gate "associated with the shared object on the 'server'-side via " 127*0Sstevel@tonic-gate "the CIM_SharedElement association. Shares are mounted on the " 128*0Sstevel@tonic-gate "'client'-side (usually into another namespace) via the CIM_Import" 129*0Sstevel@tonic-gate "Share association. CIM_Share is Abstract to force subclassing to " 130*0Sstevel@tonic-gate "define the semantics of sharing." ) ] 131*0Sstevel@tonic-gateclass CIM_Share : CIM_LogicalElement { 132*0Sstevel@tonic-gate 133*0Sstevel@tonic-gate [Key, MaxLen (256), 134*0Sstevel@tonic-gate Propagated ("CIM_System.CreationClassName"), 135*0Sstevel@tonic-gate Description ("The scoping System's CreationClassName. ") ] 136*0Sstevel@tonic-gate string SystemCreationClassName; 137*0Sstevel@tonic-gate 138*0Sstevel@tonic-gate [Key, Propagated ("CIM_System.Name"), 139*0Sstevel@tonic-gate Description ("The scoping System's Name.") ] 140*0Sstevel@tonic-gate string SystemName; 141*0Sstevel@tonic-gate 142*0Sstevel@tonic-gate [Key, MaxLen (256), Description ( 143*0Sstevel@tonic-gate "CreationClassName indicates the name of the class or the " 144*0Sstevel@tonic-gate "subclass used in the creation of an instance.") ] 145*0Sstevel@tonic-gate string CreationClassName; 146*0Sstevel@tonic-gate 147*0Sstevel@tonic-gate [Override("Name"), Key, Description ( 148*0Sstevel@tonic-gate "The Name property, inherited from LogicalElement, " 149*0Sstevel@tonic-gate "defines the shared name by which the shared object is " 150*0Sstevel@tonic-gate "exported.") ] 151*0Sstevel@tonic-gate string Name; 152*0Sstevel@tonic-gate}; 153*0Sstevel@tonic-gate 154*0Sstevel@tonic-gate 155*0Sstevel@tonic-gate// =================================================================== 156*0Sstevel@tonic-gate// FileShare 157*0Sstevel@tonic-gate// =================================================================== 158*0Sstevel@tonic-gate[Abstract, Experimental, Version ("2.7.0"), Description ( 159*0Sstevel@tonic-gate "A FileShare is representative of a file or directory presented " 160*0Sstevel@tonic-gate "for use (or shared) across systems. Instances of FileShare are " 161*0Sstevel@tonic-gate "associated with the shared object on the 'server'-side via " 162*0Sstevel@tonic-gate "the CIM_SharedElement association. Shares are mounted on the " 163*0Sstevel@tonic-gate "'client'-side (usually into another namespace) via the CIM_Import" 164*0Sstevel@tonic-gate "Share association. FileShare is Abstract to force subclassing to " 165*0Sstevel@tonic-gate "define the semantics of sharing." ) ] 166*0Sstevel@tonic-gateclass CIM_FileShare : CIM_Share { 167*0Sstevel@tonic-gate 168*0Sstevel@tonic-gate [Description ("Indicates whether a directory or file is presented " 169*0Sstevel@tonic-gate "for use (or shared) across systems. A value of true " 170*0Sstevel@tonic-gate "represents a directory. A value of false represents a file") ] 171*0Sstevel@tonic-gate boolean SharingDirectory; 172*0Sstevel@tonic-gate}; 173*0Sstevel@tonic-gate 174*0Sstevel@tonic-gate// =================================================================== 175*0Sstevel@tonic-gate// NFSShare 176*0Sstevel@tonic-gate// =================================================================== 177*0Sstevel@tonic-gate[Experimental, Version ("2.7.0"), Description ( 178*0Sstevel@tonic-gate "An NFSShare represents a Directory associated " 179*0Sstevel@tonic-gate "via CIM_SharedElement that is made accessible to " 180*0Sstevel@tonic-gate "other systems. On the client-side, the NFSShare is " 181*0Sstevel@tonic-gate "associated with its mount point via " 182*0Sstevel@tonic-gate "CIM_ImportedShare.") ] 183*0Sstevel@tonic-gateclass CIM_NFSShare : CIM_FileShare { 184*0Sstevel@tonic-gate 185*0Sstevel@tonic-gate [Override("Name"), Description ( 186*0Sstevel@tonic-gate "The Name property, inherited from Share, defines the " 187*0Sstevel@tonic-gate "shared name by which the shared object is exported. " 188*0Sstevel@tonic-gate "For NFS, this will typically be the pathname of the " 189*0Sstevel@tonic-gate "exported directory, using forward slashes '/' to " 190*0Sstevel@tonic-gate "precede directory names in the path.") ] 191*0Sstevel@tonic-gate string Name; 192*0Sstevel@tonic-gate}; 193*0Sstevel@tonic-gate 194*0Sstevel@tonic-gate// =================================================================== 195*0Sstevel@tonic-gate// SharedElement 196*0Sstevel@tonic-gate// =================================================================== 197*0Sstevel@tonic-gate[Association, Experimental, Version ("2.7.0"), Description ( 198*0Sstevel@tonic-gate "SharedElement associates the Share to a LogicalElement" 199*0Sstevel@tonic-gate "that is being exported.") ] 200*0Sstevel@tonic-gateclass CIM_SharedElement: CIM_LogicalIdentity { 201*0Sstevel@tonic-gate 202*0Sstevel@tonic-gate [Override("SystemElement"), Key, Max (1), 203*0Sstevel@tonic-gate Description ("The Directory that is Shared.") ] 204*0Sstevel@tonic-gate CIM_LogicalElement REF SystemElement; 205*0Sstevel@tonic-gate 206*0Sstevel@tonic-gate [Override("SameElement"), Key, Description ( 207*0Sstevel@tonic-gate "The Shared view of the Directory.") ] 208*0Sstevel@tonic-gate CIM_Share ref SameElement; 209*0Sstevel@tonic-gate}; 210*0Sstevel@tonic-gate 211*0Sstevel@tonic-gate// ================================================================== 212*0Sstevel@tonic-gate// HostedShare 213*0Sstevel@tonic-gate// ================================================================== 214*0Sstevel@tonic-gate[Association, Experimental, Version ("2.7.0"), Description ( 215*0Sstevel@tonic-gate "CIM_HostedShare is an association between a Share and " 216*0Sstevel@tonic-gate "the System on which the functionality resides. The " 217*0Sstevel@tonic-gate "cardinality of this association is 1-to-many. A System " 218*0Sstevel@tonic-gate "may host many Shares. Shares are weak with respect to " 219*0Sstevel@tonic-gate "their hosting System. Heuristic: A Share is hosted on " 220*0Sstevel@tonic-gate "the System where the LogicalElement that Exports the " 221*0Sstevel@tonic-gate "Share is located, (via LogicalIdentity.)") ] 222*0Sstevel@tonic-gateclass CIM_HostedShare:CIM_Dependency { 223*0Sstevel@tonic-gate 224*0Sstevel@tonic-gate [Override ("Antecedent"), Max (1), Min (1), 225*0Sstevel@tonic-gate Description ("The hosting System.") ] 226*0Sstevel@tonic-gate CIM_System REF Antecedent; 227*0Sstevel@tonic-gate 228*0Sstevel@tonic-gate [Override ("Dependent"), Weak, 229*0Sstevel@tonic-gate Description ("The Share hosted on the System.") ] 230*0Sstevel@tonic-gate CIM_Share REF Dependent; 231*0Sstevel@tonic-gate}; 232*0Sstevel@tonic-gate 233