summaryrefslogtreecommitdiffstats
path: root/openlmi-register-pegasus
diff options
context:
space:
mode:
Diffstat (limited to 'openlmi-register-pegasus')
-rwxr-xr-xopenlmi-register-pegasus99
1 files changed, 0 insertions, 99 deletions
diff --git a/openlmi-register-pegasus b/openlmi-register-pegasus
deleted file mode 100755
index 149af59..0000000
--- a/openlmi-register-pegasus
+++ /dev/null
@@ -1,99 +0,0 @@
-#!/usr/bin/python2
-#
-# Copyright (C) 2012-2013 Red Hat, Inc. All rights reserved.
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-#
-# Authors: Radek Novacek <rnovacek@redhat.com>
-# Jan Safranek <jsafrane@redhat.com>
-#
-
-import sys
-import re
-import argparse
-
-reg_parse = re.compile(r"\[([^\]]+)\]\s+"
-"provider: ([^\s]+)\s+"
-"location: (\w+)\s+"
-"type: ([^\n]+)\s+"
-"namespace: ([^\n]+)\s+"
-"(group: ([^\n]+)|)") # the group is optional
-
-Types = {
- 'instance': '2',
- 'association': '3',
- 'indication': '4',
- 'method': '5',
- 'consumer': '6',
- 'instanceQuery': '7'
-}
-
-def define_module(location, group, version):
- return """instance of PG_ProviderModule
-{
- Name = "%(group)s";
- Location = "%(location)s";
- Vendor = "OpenLMI";
- Version = "%(version)s";
- InterfaceType = "CMPI";
- InterfaceVersion = "2.0.0";
- ModuleGroupName = "%(group)s";
-};
-""" % { 'location': location, 'group': group, 'version': version }
-
-def getTypes(types):
- l = []
- for key, value in Types.items():
- if key in types:
- l.append(value)
- return ",".join(l)
-
-def define_capability(location, provider, cls, types, group):
- return """instance of PG_Provider
-{
- Name = "%(provider)s";
- ProviderModuleName = "%(group)s";
-};
-
-instance of PG_ProviderCapabilities
-{
- ProviderModuleName = "%(group)s";
- ProviderName = "%(provider)s";
- CapabilityID = "%(class)s";
- ClassName = "%(class)s";
- Namespaces = { "root/cimv2" };
- ProviderType = { %(types)s };
- SupportedProperties = NULL;
- SupportedMethods = NULL;
-};
-""" % { 'location': location, 'provider': provider, 'class': cls, 'types': getTypes(types), 'group': group }
-
-parser = argparse.ArgumentParser(description='Create MOF files with registration of providers for Pegasus CIMOM.')
-parser.add_argument('-v', '--version', action='store', required=True, help="Version of the provider API.")
-args = parser.parse_args()
-version = args.version
-
-modules_defined = {}
-for record in reg_parse.findall(sys.stdin.read()):
- cls, provider, location, types, namespace, _unused, group = record
-
- if not group:
- group = location
-
- if group not in modules_defined:
- print define_module(location, group, version)
- modules_defined[group] = True
-
- print define_capability(location, provider, cls, types, group)