// Copyright (c) 1997-2003 Microsoft Corporation, All Rights Reserved

#pragma autorecover

[locale(1033)] 
class ActiveScriptEventConsumer : __EventConsumer
{
  [key] string Name;
  [not_null, write] string ScriptingEngine;
  [write] string ScriptText;
  [write] string ScriptFilename;
  [write] uint32 KillTimeout = 0;
};

Instance of __Win32Provider as $SCRCONS_P
{
  Name = "ActiveScriptEventConsumer";
  Clsid = "{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";
  PerUserInitialization = TRUE;
  HostingModel = "SelfHost";

};

Instance of __EventConsumerProviderRegistration
{
  Provider = $SCRCONS_P;
  ConsumerClassNames = {"ActiveScriptEventConsumer"};
};

instance of __namespace{ name="ms_409";};
#pragma namespace("ms_409")

[AMENDMENT, LOCALE(0x409)] 
class ActiveScriptEventConsumer : __EventConsumer
{
  [description("Name of the scripting engine, ex: VBScript") : Amended] string ScriptingEngine;
  [Description("Text of the script, expressed in a language known to the scripting engine.") : Amended] string ScriptText;
  [description("Filename of a script file to be run, note that this is intended as an alternative to specifying the text of the script in ScriptText.  Results are undefined if both properties are assigned values.") : Amended] string ScriptFilename;
  [description("Number of seconds that the script is allowed to run, if zero script will not be terminated.") : Amended] uint32 KillTimeout;
};


#pragma namespace("\\\\.\\Root\\CIMV2")

[locale(1033),Singleton] 
class ScriptingStandardConsumerSetting : CIM_Setting
{
  [Read,Override("SettingID")] string SettingID = "ScriptingStandardConsumerSetting";
  [Read,Override("Caption")] string Caption = "Scripting Standard Consumer Setting";
  [Read,Override("Description")] string Description = "Registration data common to all instances of the Scripting Standard Consumer";
  [Read, Write] uint32 MaximumScripts = 300;
  [Read, Write, units("Minutes")] uint32 Timeout = 0;
};

Instance of ScriptingStandardConsumerSetting
{
  MaximumScripts = 300;
  Timeout = 0;
};

#pragma namespace("\\\\.\\Root\\CIMV2")
instance of __namespace{ name="ms_409";};
#pragma namespace("\\\\.\\Root\\CIMV2\\ms_409")

[Description("Provides registration data common to all instances of the Active Script Consumer") : Amended,AMENDMENT, LOCALE(0x409)] 
class ScriptingStandardConsumerSetting : CIM_Setting
{
  [Description("Maximum number of scripts run before the consumer will start a new instance.  The consumer should be shut down periodically to clear out memory leaks from the scripts.") : Amended] uint32 MaximumScripts;
  [Description("Maximum number of minutes before the consumer will start a new instance.  If zero, consumer lifetime is controlled by the MaximumScripts property. Valid Range: 0-71,000.") : Amended] uint32 Timeout;
};
