83 lines
2.1 KiB
C++
83 lines
2.1 KiB
C++
//+------------------------------------------------------------------
|
|
//
|
|
// Copyright (C) Microsoft Corporation, 1991 - 1997
|
|
//
|
|
// File: defprop.hxx
|
|
//
|
|
// Contents: Deferred property retriever
|
|
//
|
|
// Classes: CCiCDeferredPropRetriever
|
|
//
|
|
// History: 12-Jan-97 SitaramR Created
|
|
//
|
|
//-------------------------------------------------------------------
|
|
|
|
#pragma once
|
|
|
|
#include <ciintf.h>
|
|
#include <catalog.hxx>
|
|
#include <imprsnat.hxx>
|
|
#include <pidremap.hxx>
|
|
#include <seccache.hxx>
|
|
|
|
|
|
//+---------------------------------------------------------------------------
|
|
//
|
|
// Class: CDeferredPropRetriever
|
|
//
|
|
// Purpose: Retrieves deferred properties
|
|
//
|
|
// History: 12-Jan-97 SitaramR Created
|
|
//
|
|
//----------------------------------------------------------------------------
|
|
|
|
class CCiCDeferredPropRetriever : public ICiCDeferredPropRetriever
|
|
{
|
|
public:
|
|
|
|
//
|
|
// From IUnknown
|
|
//
|
|
|
|
SCODE STDMETHODCALLTYPE QueryInterface( REFIID riid, void **ppvObject );
|
|
|
|
ULONG STDMETHODCALLTYPE AddRef();
|
|
|
|
ULONG STDMETHODCALLTYPE Release();
|
|
|
|
//
|
|
// From ICiCDeferredPropRetriever
|
|
//
|
|
|
|
SCODE STDMETHODCALLTYPE RetrieveDeferredValueByPid( WORKID wid,
|
|
PROPID pid,
|
|
PROPVARIANT *pVar )
|
|
{
|
|
return E_NOTIMPL;
|
|
}
|
|
|
|
SCODE STDMETHODCALLTYPE RetrieveDeferredValueByPropSpec( WORKID wid,
|
|
const FULLPROPSPEC *pPropSpec,
|
|
PROPVARIANT *pVar );
|
|
//
|
|
// Local methods
|
|
//
|
|
|
|
CCiCDeferredPropRetriever( PCatalog & cat,
|
|
CSecurityCache & secCache,
|
|
BOOL fUsePathAlias );
|
|
|
|
private:
|
|
|
|
virtual ~CCiCDeferredPropRetriever( );
|
|
|
|
ULONG _cRefs;
|
|
|
|
CImpersonateRemoteAccess _remoteAccess;
|
|
PCatalog & _cat;
|
|
BOOL _fUsePathAlias; // Is the query from a remote client ?
|
|
CSecurityCache & _secCache; // cache of AccessCheck results
|
|
};
|
|
|
|
|