Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

70 lines
1.4 KiB

///////////////////////////////////////////////////////////////////////////////
//
// Copyright (c) 1999, Microsoft Corp. All rights reserved.
//
// FILE
//
// action.h
//
// SYNOPSIS
//
// Declares the class Action.
//
// MODIFICATION HISTORY
//
// 02/01/2000 Original version.
//
///////////////////////////////////////////////////////////////////////////////
#ifndef ACTION_H
#define ACTION_H
#if _MSC_VER >= 1000
#pragma once
#endif
#include <realm.h>
#include <memory>
#include <iastlutl.h>
using namespace IASTL;
///////////////////////////////////////////////////////////////////////////////
//
// CLASS
//
// Action
//
///////////////////////////////////////////////////////////////////////////////
class Action
{
public:
Action(PCWSTR name, DWORD nameAttr, _variant_t& action);
// Perform the action.
void doAction(IASRequest& pRequest) const;
protected:
// Create a VSA from the string format used by the UI.
static PIASATTRIBUTE VSAFromString(PCWSTR string);
private:
// Profile attributes to be added to the request.
IASAttributeVector attributes;
// Provider information.
IASAttributeVectorWithBuffer<2> authProvider;
IASAttributeVectorWithBuffer<2> acctProvider;
// Attribute manipulation.
DWORD realmsTarget;
Realms realms;
// Not implemented.
Action(const Action&) throw ();
Action& operator=(const Action&) throw ();
};
typedef std::auto_ptr<Action> ActionPtr;
#endif // ACTION_H