Share via


Classes : Concepts clés

 

Date de publication : juillet 2016

S’applique à : System Center 2012 SP1 - Service Manager, System Center 2012 R2 Service Manager, System Center 2012 - Service Manager

Dans System Center 2012 - Service Manager , les objets représentent des instances d'une classe de base. Toutes les instances d'une classe de base possèdent un ensemble de propriétés et un comportement communs.

Comme tous les éléments du pack d'administration, les classes possèdent des propriétés ID et DisplayName . Dans le présent document, le terme « ID » fait référence au nom unique de la classe qui apparaît uniquement dans Outil de création, et les termes « nom » et « nom d'affichage » font référence au nom explicite qui apparaît dans la Console de Service Manager.

Notes


Lorsque vous créez une classe, assurez-vous toujours que les noms de classe sont uniques d'un pack d'administration à l'autre. Si possible, utilisez des noms de classe explicites dans votre environnement. Pour savoir si un nom de classe existe déjà, vous pouvez utiliser la fonctionnalité de recherche depuis la fenêtre Explorateur de classes de Outil de création de System Center 2012 – Service Manager.

Propriétés

Toutes les instances d'une classe partagent un ensemble commun de propriétés. Les valeurs de ces propriétés peuvent être attribuées via différentes méthodes par les utilisateurs et peuvent varier d'une instance à l'autre. Les propriétés permettent de représenter les informations relatives à un objet, telles que son nom unique, son emplacement, et d'autres informations utiles ou nécessaires dans le cadre de leur gestion.

Propriétés de clé

Une propriété de clé permet d'identifier de manière unique chaque instance d'une classe particulière. Si une propriété est marquée comme étant une propriété de clé, sa valeur doit être unique et non Null dans chaque instance de la classe. Pour les classes hébergées, leur valeur doit être unique pour toutes les instances ayant le même parent hôte. Pour les classes non hébergées, leur valeur doit être unique pour toutes les instances présentes dans le groupe d'administration. Les relations d'hébergement seront décrites plus loin dans cette section.

Les classes ne nécessitent pas toujours de propriétés de clé. Une propriété de clé est nécessaire uniquement lorsqu'un même parent doit contenir plusieurs instances d'une classe. Si une seule instance est prévue, une propriété de clé n'est pas obligatoire, mais peut toutefois être définie.

Par exemple, le moteur de base de données SQL possède une propriété de clé dont la valeur est Instance Name , car plusieurs instances de Microsoft SQL Server peuvent être installées sur un même ordinateur. Lorsqu'il existe plusieurs instances du moteur de base de données SQL, chacune doit avoir une valeur différente pour Instance Name , afin qu'il soit facile de distinguer les différents objets. À l'inverse, la classe IIS Web Server ne définit pas de clé de propriété, car il ne peut y avoir qu'une seule instance sur l'ordinateur.

Tous les objets possèdent une propriété Path Name qui est calculée à partir de la ou des propriétés clés de l'objet, ainsi que de celles du ou des hôtes parents. Pour les objets non hébergés, Path Name est la propriété de clé de la classe elle-même. Path Name permet d'identifier de manière unique une instance d'une classe dans le groupe d'administration.

Classes de base et héritage

Chaque classe doit spécifier une classe de base qui permette d'identifier une classe existante que la nouvelle classe aura pour but de spécialiser. Les bibliothèques de pack d'administration comprises dans Service Manager contiennent plusieurs classes qui peuvent servir de base aux classes personnalisées des packs d'administration. Un pack d'administration contient généralement au moins une classe qui hérite d'une classe de bibliothèque, et parfois d'autres classes qui héritent des classes du même pack d'administration.

Le concept d'une classe de base peut être illustré par le pack d'administration du système d'exploitation Windows Server. Ce pack d'administration comprend des classes qui représentent des disques logiques installés sur l'ordinateur. L'illustration suivante montre les classes Windows Server 2003 Logical Disk et Windows Server 2008 Logical Disk. Ces classes sont toutes deux basées sur Logical Disk (Server) qui est définie dans le fichier de pack d'administration Microsoft.Windows.Server.Library. Logical Disk (Server) est, quant à elle, basée sur Logical Disk, qui, elle, est basée sur Logical Device, et ainsi de suite jusqu'à Logical Hardware, Logical Entityet enfin, Entity. Toutes les classes ont un chemin d'héritage similaire se terminant toujours par Entity, qui est la racine de la structure de la classe. Il s'agit de la seule classe qui n'a pas de classe de base, et dont toutes les autres classes finissent par hériter.

Héritage des propriétés entre classes

Héritage des propriétés entre classes

Entity a une propriété unique, nommée Display Name. Cette propriété est héritée par toutes les classes héritant d' Entity. Toutes les classes héritent finalement d' Entity. C'est pourquoi toutes les classes possèdent une propriété Display Name . Aucune autre classe dans cet exemple n'a de propriété avant Logical Device, qui définit Name, Descriptionet DeviceID. DeviceID est spécifié comme propriété de clé. Ces propriétés sont toutes héritées par Logical Disk et Logical Disk (Server). Logical Disk (Server) ajoute alors les propriétés supplémentaires Size, Drive Typeet File System. Les classes situées au bas de l'arborescence qui sont spécifiques à la version du système d'exploitation héritent de l'ensemble des propriétés fournies par les classes de niveau supérieur dans l'arborescence d'héritage.

Types de classes

La plupart des classes possèdent une ou plusieurs instances, et sont connues sous le nom de classes concrètes. Lesclasses abstraites et les classes singleton are special kinds of classes that behave differently et les are used for particular scenarios.

classes abstraites

Les classes abstraites ne contiennent aucune instance et existent uniquement comme classes de base d'autres classes. Toutes les propriétés et relations définies au niveau de la classe abstraite sont héritées par les classes enfants et n'ont pas à être définies une nouvelle fois. La plupart des classes définies dans les bibliothèques de pack d'administration sont abstraites, puisqu'elles ne sont fournies qu'en tant que classes de base d'autres classes définies dans les packs d'administration personnalisés.

Les classes abstraites sont utilisées lorsqu'un ensemble commun de propriétés, de relations ou de regroupements peut être défini pour toutes les spécialisations d'une classe. Dans l'exemple précédent, toutes les classes situées au-dessus de Windows Server 2003 Logical Disk et Windows Server 2008 Logical Disk sont abstraites. Elles n'existent que pour les classes qui doivent hériter d'elles.

classes singleton

Lesclasses singleton sont utilisées lorsqu'il n'existe qu'une seule instance de classe. La classe représente l'instance et existe de façon permanente. L'instance unique est créée au moment de l'installation du pack d'administration. De même, la classe singleton ne nécessite pas de propriété de clé, puisqu'il n'y aura qu'une seule instance. Les classes singleton sont couramment utilisées avec la classe Groups , car une seule instance de classe est nécessaire dans le groupe d'administration.

Extensions de classe

Pour personnaliser une classe, vous pouvez l'étendre en ajoutant de nouvelles propriétés à la définition de classe existante. Les nouvelles propriétés seront alors incluses dans toutes les instances existantes de cette classe, ainsi que dans toutes les nouvelles instances. Une classe abstraite ne peut pas être étendue.

Relations

Lesrelations sont définies entre deux classes ou plus, afin d'indiquer l'association de leurs instances. Il existe trois types de relations, qui sont décrites en détail dans les sections suivantes :

  • Relation d'hébergement

  • Relation d'imbrication

  • Relation de référence

Les relations de classe affectent les objets de différentes façons.

Type de relation Existence et propriété de clé Propriétés disponibles
Hébergement La valeur de la propriété de clé doit être unique pour toutes les instances de la classe du groupe d'administration. Toutefois, pour les classes hébergées, la valeur de la propriété de clé ne doit être unique que pour les objets ayant le même parent hôte.

La propriété de clé de l'objet et celle de son parent sont requises pour identifier de manière unique un objet hébergé. En outre, la clé de la classe hébergée correspondra à la combinaison de la propriété de clé de la classe hôte et de celle de la classe hébergée.

L'existence d'une classe hébergée dépend de l'existence de la classe d'hébergement.
Les flux de travail ciblant une classe ont accès aux propriétés de cette classe, ainsi qu'à celles de ses parents hôtes.

Par exemple, le script d'un flux de travail utilisant la classe SQL 2008 DB Engine comme cible peut nécessiter le nom de l'ordinateur sur lequel est installée l'instance de SQL Server 2008. Étant donné qu'un objet ne peut avoir qu'un seul parent hôte, nous savons quel ordinateur héberge chacune des instances de la classe SQL 2008 DB Engine . Le script du flux de travail peut accéder aux propriétés de l'objet ciblé, ainsi qu'à celles de son parent hôte.
Imbrication L'existence et la propriété de clé ne dépendent pas de l'objet conteneur. Les flux de travail ciblant une classe ont accès aux propriétés de cette classe, ainsi qu'à celles de ses conteneurs parents.

Par exemple, le script d'un flux de travail ciblant une classe d'incident peut accéder aux propriétés de classe de la file d'attente de conteneur.
Référence L'existence et la propriété de clé ne dépendent pas de l'objet référencé. Tous les flux de travail ciblant une classe ne peuvent accéder qu'aux propriétés de cette classe.

Relation de référence

La relation de référence est le type de relation le plus général. Une relation de référence est utilisée lorsque les classes du parent et de l'enfant ne dépendent pas les unes des autres. Par exemple, une base de données peut référencer une base de données qu'elle réplique. Elles ne dépendent pas l'une de l'autre et leurs objets existent de façon indépendante.

Relation d'imbrication

La relation d'imbrication est moins restrictive que la relation d'hébergement. Elle déclare qu'une classe est liée à une autre classe, même si l'existence de l'une ne dépend pas de celle de l'autre. Contrairement à une relation d'hébergement, une relation d'imbrication peut être de type plusieurs-à-plusieurs. Cela signifie qu'un objet peut contenir plusieurs objets, et qu'un même objet peut être contenu par plusieurs autres objets. Par exemple, un groupe peut contenir plusieurs objets, et un même objet peut être membre de plusieurs groupes.

Les relations d'imbrication sont généralement utilisées dans le cadre d'une appartenance à un groupe, où des objets sont inclus dans un groupe via une relation d'imbrication entre le groupe et les objets membres.

Relation d'hébergement

La relation la plus restrictive de toutes est la relation d' hébergement . Une classe hébergée par une autre classe est appelée classe hébergée, et ses instances sont appelées objets hébergés. Si une classe n'est pas hébergée par une autre classe, elle est appelée classe non hébergée, et ses instances sont appelées objets non hébergés.

Lorsqu'un objet est hébergé par un autre, son existence dépend de celle de son parent hôte. Si le parent hôte est supprimé, l'enfant hébergé sera également supprimé. Par exemple, un disque logique ne peut pas exister sans l'ordinateur sur lequel il est installé.

Un objet hébergé ne peut avoir qu'un seul parent hôte, mais un parent peut héberger plusieurs enfants. Par exemple, un disque ne peut être installé que sur un ordinateur, mais un ordinateur peut contenir plusieurs disques.

Le pack d'administration de SQL Server fournit un autre exemple de relations d'hébergement. La relation d'hébergement entre la classe Windows Computer , la classe SQL 2008 DB Engine et la classe SQL 2008 DB est illustrée ci-dessous.

Relations d'hébergement pour les classes SQL Server 2008

Relation d'hébergement pour les classes SQL Server 2008

La classe SQL 2008 DB Engine représente une instance de SQL Server 2008 installée sur un ordinateur particulier. Étant donné qu'une base de données ne peut être installée que sur un seul moteur de base de données, la classe SQL 2008 DB Engine héberge la classe SQL 2008 DB . Plusieurs bases de données d'un même groupe d'administration peuvent porter le même nom. Toutefois, les bases de données installées sur une instance de la classe SQL Server doivent chacune avoir un nom unique. Le moteur de base de données est, quant à lui, hébergé par la classe Windows Computer . Plusieurs instances SQL Server peuvent porter le même nom au sein d'un même groupe d'administration. Toutefois, elles doivent avoir un nom unique sur chaque ordinateur.

Étant donné qu'il existe deux relations d'hébergement, le nom du chemin d'accès à chaque base de données correspondra au nom de l'ordinateur, suivi du nom de l'instance, puis de celui de la base de données. Le diagramme ci-dessous en fournit un exemple.

Relations d'hébergement d'exemples de bases de données

Relation d'hébergement de base de données échantillon

Voir aussi

Classes : Personnalisation et création