Leaked source code of windows server 2003
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.

76 lines
2.4 KiB

  1. /********************************************************************
  2. Copyright (c) 1999 Microsoft Corporation
  3. Module Name:
  4. NetSW.h
  5. Abstract:
  6. Implements the class CNetSW that contains methods for executing
  7. the search query and returning the results back to the UI. Also
  8. contains methods for dynamic update of parameter list and dynamic
  9. generation of parameters.
  10. Revision History:
  11. a-prakac created 10/24/2000
  12. ********************************************************************/
  13. #if !defined(__INCLUDED___PCH___SELIB_NETSE_H___)
  14. #define __INCLUDED___PCH___SELIB_NETSE_H___
  15. /////////////////////////////////////////////////////////////////////////////
  16. // CNetSW
  17. namespace SearchEngine
  18. {
  19. class ATL_NO_VTABLE WrapperNetSearch :
  20. public WrapperBase,
  21. public MPC::Thread<WrapperNetSearch,IUnknown>,
  22. public CComCoClass<WrapperNetSearch, &CLSID_NetSearchWrapper>
  23. {
  24. CParamList m_ParamList;
  25. CSearchResultList m_resConfig;
  26. CRemoteConfig m_objRemoteConfig;
  27. MPC::XmlUtil m_xmlQuery;
  28. CComBSTR m_bstrLCID;
  29. CComBSTR m_bstrSKU;
  30. bool m_bOfflineError;
  31. CComBSTR m_bstrPrevQuery;
  32. ////////////////////
  33. // non-exported functions
  34. HRESULT ExecQuery ( );
  35. HRESULT AppendParameter( /*[in]*/ BSTR bstrParam, /*[in]*/ MPC::URL& urlQueryString );
  36. public:
  37. DECLARE_NO_REGISTRY()
  38. BEGIN_COM_MAP(WrapperNetSearch)
  39. COM_INTERFACE_ENTRY2(IDispatch,IPCHSEWrapperItem)
  40. COM_INTERFACE_ENTRY(IPCHSEWrapperItem)
  41. COM_INTERFACE_ENTRY(IPCHSEWrapperInternal)
  42. END_COM_MAP()
  43. WrapperNetSearch();
  44. ~WrapperNetSearch();
  45. virtual HRESULT CreateListOfParams( /*[in]*/ CPCHCollection* coll );
  46. // IPCHSEWrapperItem
  47. public:
  48. STDMETHOD(Result)( /*[in]*/ long lStart, /*[in]*/ long lEnd, /*[out, retval]*/ IPCHCollection* *ppC );
  49. STDMETHOD(get_SearchTerms)( /*[out, retval]*/ VARIANT *pvTerms );
  50. // IPCHSEWrapperInternal
  51. public:
  52. STDMETHOD(ExecAsyncQuery)( );
  53. STDMETHOD(AbortQuery )( );
  54. STDMETHOD(Initialize )( /*[in]*/ BSTR bstrID, /*[in]*/ BSTR bstrSKU, /*[in]*/ long lLCID, /*[in]*/ BSTR bstrData );
  55. };
  56. };
  57. #endif // !defined(__INCLUDED___PCH___SELIB_NETSW_H___)