[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

1378.0. "Query: Determining the MSL version" by COOKIE::KITTELL (Richard - Architected Info Mgmt) Thu Aug 22 1991 17:10


One of our folks thinking about IVPs asks "Can the kitinstal determine
whether our MSL has been loaded into the dictionary, and if so, what
version it is?"

1) Has anyone written the simple program to call the mcc_dict routines
   and determine whether one or more entity definitions are present?

2) It doesn't look like the MSL version string makes it into the .COM file
output by the MSL compiler, and hence into the dictionary. True?

I have a typically devious way of getting the version from the MSL, in case
the answer to 2 is no.

   o Define the Display directive for the top-level entity in the MSL.
     Give it an argument MSL Version with REQUIRED = TRUE and 
     DEFAULT = "V1.3.11" or whatever the MSL version is. Define a response
     with an argument of MSL Version.

   o Code the AM, the Agent, or the Entity (depending on where my code
     gets control) so that it simply turns around the directive argument
     and sends it back as the response arg.

   o When we need to know the version of the MSL we do a
     MCC>Display MediaLibrary any MSL Version

   o The PM will note that there is no value on a required default argument
     and pass the default value defined in the dictionary, which is the
     version that will get displayed.

Will it work? I'll bet Display is used for something else, or maybe it isn't
an action directive. But then there are DO, DUMP, EVALUATE, HELP, NOTIFY,
and QUERY. Maybe one of them could be pressed into service.
T.RTitleUserPersonal
Name
DateLines
1378.1yeah but...TOOK::CALLANDERJill Callander DTN 226-5316Tue Sep 03 1991 16:1419
You can get that to work, but I would instead suggest that if you want
to do something along those lines, it would be cleaner to add in a 
new attribute to you AM (you should already have component identification and
component version), to this add in specification version or something along
those lines. Then put in the dictionary a default value for the attribute.
Note that a default on an attribute does NOT make it a settable attirbute.
Simply set the attribute non-settable and then when the user does a show
(which is what the template installation procedures do) you have the AM
pull the default value from the dictionary and return it for the value
of the specification version.

This is cleaner and follows better with the architecture. A quick thing to
note, is that the PM's are *NOT* supposed to pass down the default value,
but are supposed to pass down the implementation specific default 
flag. The xM is supposed to lookup the defalt value or simply know what
to do when the ilv routine returns ilv implementation default fro the
CVR.

jill
1378.2Would this work?COOKIE::KITTELLRichard - Architected Info MgmtWed Sep 04 1991 11:5629
RE: .1

Jill,

We don't have our own AM (anymore), we're using the P5AM. Besides, we don't 
want to know the version of the AM (the existing attrs tell us that), we
want to know the version of the MSL describing the managed object(s).

The install can't rely on having the DAP around on the customer's system, so
it sounds like the best solution is a little program that uses the
dictionary access routines to look up a string associated with a specified
object definition, then writes the version string to stdout and stashes it
into a symbol or logical.

We could define an attribute

	ATTRIBUTE Management Specification Version = <tbd> : Version
          DISPLAY = FALSE;
          DEFAULT = V1.0.0
        END ATTRIBUTE Management Specification Version;

The installation would:

   $ GET_MS_VERSION = $<TBD>GET_MS_VERSION.EXE
   $ GET_MS_VERSION MediaLibrary

      Management Specification Version is V1.0.0

1378.3DAP is *always* supposed to be presentGOSTE::CALLANDERSat Sep 07 1991 10:397
    you should be able to reply on DAP being around, since it is part
    of ALL kits (DIR and BMS). DAP is a required piece of installation
    software and will always be present unless some one is mucking around
    with the installed kit.
    
    jill
    
1378.4DAP on DIR/BMS kitCOOKIE::KITTELLRichard - Architected Info MgmtMon Sep 09 1991 11:135
RE: .3

Thanks, Jill. I figured DAP was part of the toolkit, forgot it was used
during installation.