Commit 09a96c7a authored by S. Ganesh's avatar S. Ganesh Committed by Commit Bot

Add IUpdaterObserver interface stub.

IUpdater::UpdateAll now takes an IUpdaterObserver interface that it
will eventually use to sink events.

Bug: 1053729
Change-Id: I2a2a9813e2b33c4496b286329084b0e21478ba9c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2101934
Commit-Queue: S. Ganesh <ganesh@chromium.org>
Auto-Submit: S. Ganesh <ganesh@chromium.org>
Reviewed-by: default avatarSorin Jianu <sorin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#750274}
parent 85a3828e
......@@ -84,7 +84,7 @@ HRESULT UpdaterImpl::Update(const base::char16* app_id) {
return E_NOTIMPL;
}
HRESULT UpdaterImpl::UpdateAll() {
HRESULT UpdaterImpl::UpdateAll(IUpdaterObserver* observer) {
return E_NOTIMPL;
}
......
......@@ -32,7 +32,7 @@ class UpdaterImpl
const base::char16* version,
const base::char16* existence_checker_path) override;
IFACEMETHODIMP Update(const base::char16* app_id) override;
IFACEMETHODIMP UpdateAll() override;
IFACEMETHODIMP UpdateAll(IUpdaterObserver* observer) override;
private:
~UpdaterImpl() override = default;
......
......@@ -5,6 +5,17 @@
import "oaidl.idl";
import "ocidl.idl";
[
object,
oleautomation,
uuid(7B416CFD-4216-4FD6-BD83-7C586054676E),
helpstring("IUpdaterObserver Interface"),
pointer_default(unique)
]
interface IUpdaterObserver : IUnknown {
HRESULT OnComplete([in] int error_code);
};
[
object,
dual,
......@@ -20,7 +31,7 @@ interface IUpdater : IUnknown {
[in, string] const WCHAR* version,
[in, string] const WCHAR* existence_checker_path);
HRESULT Update([in, string] const WCHAR* app_id);
HRESULT UpdateAll();
HRESULT UpdateAll([in] IUpdaterObserver* observer);
};
[
......
......@@ -97,7 +97,7 @@ void UpdateServiceOutOfProcess::UpdateAllOnSTA(
return;
}
hr = updater->UpdateAll();
hr = updater->UpdateAll(NULL);
if (FAILED(hr)) {
VLOG(2) << "Failed to call IUpdater::UpdateAll" << std::hex << hr;
std::move(callback).Run(static_cast<Result>(hr));
......
......@@ -45,6 +45,13 @@
/* Forward Declarations */
#ifndef __IUpdaterObserver_FWD_DEFINED__
#define __IUpdaterObserver_FWD_DEFINED__
typedef interface IUpdaterObserver IUpdaterObserver;
#endif /* __IUpdaterObserver_FWD_DEFINED__ */
#ifndef __IUpdater_FWD_DEFINED__
#define __IUpdater_FWD_DEFINED__
typedef interface IUpdater IUpdater;
......@@ -92,6 +99,86 @@ extern "C"{
#endif
#ifndef __IUpdaterObserver_INTERFACE_DEFINED__
#define __IUpdaterObserver_INTERFACE_DEFINED__
/* interface IUpdaterObserver */
/* [unique][helpstring][uuid][oleautomation][object] */
EXTERN_C const IID IID_IUpdaterObserver;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("7B416CFD-4216-4FD6-BD83-7C586054676E")
IUpdaterObserver : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE OnComplete(
/* [in] */ int error_code) = 0;
};
#else /* C style interface */
typedef struct IUpdaterObserverVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IUpdaterObserver * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IUpdaterObserver * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IUpdaterObserver * This);
HRESULT ( STDMETHODCALLTYPE *OnComplete )(
IUpdaterObserver * This,
/* [in] */ int error_code);
END_INTERFACE
} IUpdaterObserverVtbl;
interface IUpdaterObserver
{
CONST_VTBL struct IUpdaterObserverVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IUpdaterObserver_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IUpdaterObserver_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IUpdaterObserver_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IUpdaterObserver_OnComplete(This,error_code) \
( (This)->lpVtbl -> OnComplete(This,error_code) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IUpdaterObserver_INTERFACE_DEFINED__ */
#ifndef __IUpdater_INTERFACE_DEFINED__
#define __IUpdater_INTERFACE_DEFINED__
......@@ -120,7 +207,8 @@ EXTERN_C const IID IID_IUpdater;
virtual HRESULT STDMETHODCALLTYPE Update(
/* [string][in] */ const WCHAR *app_id) = 0;
virtual HRESULT STDMETHODCALLTYPE UpdateAll( void) = 0;
virtual HRESULT STDMETHODCALLTYPE UpdateAll(
/* [in] */ IUpdaterObserver *observer) = 0;
};
......@@ -160,7 +248,8 @@ EXTERN_C const IID IID_IUpdater;
/* [string][in] */ const WCHAR *app_id);
HRESULT ( STDMETHODCALLTYPE *UpdateAll )(
IUpdater * This);
IUpdater * This,
/* [in] */ IUpdaterObserver *observer);
END_INTERFACE
} IUpdaterVtbl;
......@@ -194,8 +283,8 @@ EXTERN_C const IID IID_IUpdater;
#define IUpdater_Update(This,app_id) \
( (This)->lpVtbl -> Update(This,app_id) )
#define IUpdater_UpdateAll(This) \
( (This)->lpVtbl -> UpdateAll(This) )
#define IUpdater_UpdateAll(This,observer) \
( (This)->lpVtbl -> UpdateAll(This,observer) )
#endif /* COBJMACROS */
......
......@@ -67,6 +67,9 @@ typedef IID CLSID;
#endif // !_MIDL_USE_GUIDDEF_
MIDL_DEFINE_GUID(IID, IID_IUpdaterObserver,0x7B416CFD,0x4216,0x4FD6,0xBD,0x83,0x7C,0x58,0x60,0x54,0x67,0x6E);
MIDL_DEFINE_GUID(IID, IID_IUpdater,0x63B8FFB1,0x5314,0x48C9,0x9C,0x57,0x93,0xEC,0x8B,0xC6,0x18,0x4B);
......
......@@ -45,6 +45,13 @@
/* Forward Declarations */
#ifndef __IUpdaterObserver_FWD_DEFINED__
#define __IUpdaterObserver_FWD_DEFINED__
typedef interface IUpdaterObserver IUpdaterObserver;
#endif /* __IUpdaterObserver_FWD_DEFINED__ */
#ifndef __IUpdater_FWD_DEFINED__
#define __IUpdater_FWD_DEFINED__
typedef interface IUpdater IUpdater;
......@@ -92,6 +99,86 @@ extern "C"{
#endif
#ifndef __IUpdaterObserver_INTERFACE_DEFINED__
#define __IUpdaterObserver_INTERFACE_DEFINED__
/* interface IUpdaterObserver */
/* [unique][helpstring][uuid][oleautomation][object] */
EXTERN_C const IID IID_IUpdaterObserver;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("7B416CFD-4216-4FD6-BD83-7C586054676E")
IUpdaterObserver : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE OnComplete(
/* [in] */ int error_code) = 0;
};
#else /* C style interface */
typedef struct IUpdaterObserverVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IUpdaterObserver * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IUpdaterObserver * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IUpdaterObserver * This);
HRESULT ( STDMETHODCALLTYPE *OnComplete )(
IUpdaterObserver * This,
/* [in] */ int error_code);
END_INTERFACE
} IUpdaterObserverVtbl;
interface IUpdaterObserver
{
CONST_VTBL struct IUpdaterObserverVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IUpdaterObserver_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IUpdaterObserver_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IUpdaterObserver_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IUpdaterObserver_OnComplete(This,error_code) \
( (This)->lpVtbl -> OnComplete(This,error_code) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IUpdaterObserver_INTERFACE_DEFINED__ */
#ifndef __IUpdater_INTERFACE_DEFINED__
#define __IUpdater_INTERFACE_DEFINED__
......@@ -120,7 +207,8 @@ EXTERN_C const IID IID_IUpdater;
virtual HRESULT STDMETHODCALLTYPE Update(
/* [string][in] */ const WCHAR *app_id) = 0;
virtual HRESULT STDMETHODCALLTYPE UpdateAll( void) = 0;
virtual HRESULT STDMETHODCALLTYPE UpdateAll(
/* [in] */ IUpdaterObserver *observer) = 0;
};
......@@ -160,7 +248,8 @@ EXTERN_C const IID IID_IUpdater;
/* [string][in] */ const WCHAR *app_id);
HRESULT ( STDMETHODCALLTYPE *UpdateAll )(
IUpdater * This);
IUpdater * This,
/* [in] */ IUpdaterObserver *observer);
END_INTERFACE
} IUpdaterVtbl;
......@@ -194,8 +283,8 @@ EXTERN_C const IID IID_IUpdater;
#define IUpdater_Update(This,app_id) \
( (This)->lpVtbl -> Update(This,app_id) )
#define IUpdater_UpdateAll(This) \
( (This)->lpVtbl -> UpdateAll(This) )
#define IUpdater_UpdateAll(This,observer) \
( (This)->lpVtbl -> UpdateAll(This,observer) )
#endif /* COBJMACROS */
......
......@@ -67,6 +67,9 @@ typedef IID CLSID;
#endif // !_MIDL_USE_GUIDDEF_
MIDL_DEFINE_GUID(IID, IID_IUpdaterObserver,0x7B416CFD,0x4216,0x4FD6,0xBD,0x83,0x7C,0x58,0x60,0x54,0x67,0x6E);
MIDL_DEFINE_GUID(IID, IID_IUpdater,0x63B8FFB1,0x5314,0x48C9,0x9C,0x57,0x93,0xEC,0x8B,0xC6,0x18,0x4B);
......
......@@ -45,6 +45,13 @@
/* Forward Declarations */
#ifndef __IUpdaterObserver_FWD_DEFINED__
#define __IUpdaterObserver_FWD_DEFINED__
typedef interface IUpdaterObserver IUpdaterObserver;
#endif /* __IUpdaterObserver_FWD_DEFINED__ */
#ifndef __IUpdater_FWD_DEFINED__
#define __IUpdater_FWD_DEFINED__
typedef interface IUpdater IUpdater;
......@@ -92,6 +99,86 @@ extern "C"{
#endif
#ifndef __IUpdaterObserver_INTERFACE_DEFINED__
#define __IUpdaterObserver_INTERFACE_DEFINED__
/* interface IUpdaterObserver */
/* [unique][helpstring][uuid][oleautomation][object] */
EXTERN_C const IID IID_IUpdaterObserver;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("7B416CFD-4216-4FD6-BD83-7C586054676E")
IUpdaterObserver : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE OnComplete(
/* [in] */ int error_code) = 0;
};
#else /* C style interface */
typedef struct IUpdaterObserverVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IUpdaterObserver * This,
/* [in] */ REFIID riid,
/* [annotation][iid_is][out] */
_COM_Outptr_ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IUpdaterObserver * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IUpdaterObserver * This);
HRESULT ( STDMETHODCALLTYPE *OnComplete )(
IUpdaterObserver * This,
/* [in] */ int error_code);
END_INTERFACE
} IUpdaterObserverVtbl;
interface IUpdaterObserver
{
CONST_VTBL struct IUpdaterObserverVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IUpdaterObserver_QueryInterface(This,riid,ppvObject) \
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
#define IUpdaterObserver_AddRef(This) \
( (This)->lpVtbl -> AddRef(This) )
#define IUpdaterObserver_Release(This) \
( (This)->lpVtbl -> Release(This) )
#define IUpdaterObserver_OnComplete(This,error_code) \
( (This)->lpVtbl -> OnComplete(This,error_code) )
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IUpdaterObserver_INTERFACE_DEFINED__ */
#ifndef __IUpdater_INTERFACE_DEFINED__
#define __IUpdater_INTERFACE_DEFINED__
......@@ -120,7 +207,8 @@ EXTERN_C const IID IID_IUpdater;
virtual HRESULT STDMETHODCALLTYPE Update(
/* [string][in] */ const WCHAR *app_id) = 0;
virtual HRESULT STDMETHODCALLTYPE UpdateAll( void) = 0;
virtual HRESULT STDMETHODCALLTYPE UpdateAll(
/* [in] */ IUpdaterObserver *observer) = 0;
};
......@@ -160,7 +248,8 @@ EXTERN_C const IID IID_IUpdater;
/* [string][in] */ const WCHAR *app_id);
HRESULT ( STDMETHODCALLTYPE *UpdateAll )(
IUpdater * This);
IUpdater * This,
/* [in] */ IUpdaterObserver *observer);
END_INTERFACE
} IUpdaterVtbl;
......@@ -194,8 +283,8 @@ EXTERN_C const IID IID_IUpdater;
#define IUpdater_Update(This,app_id) \
( (This)->lpVtbl -> Update(This,app_id) )
#define IUpdater_UpdateAll(This) \
( (This)->lpVtbl -> UpdateAll(This) )
#define IUpdater_UpdateAll(This,observer) \
( (This)->lpVtbl -> UpdateAll(This,observer) )
#endif /* COBJMACROS */
......
......@@ -67,6 +67,9 @@ typedef IID CLSID;
#endif // !_MIDL_USE_GUIDDEF_
MIDL_DEFINE_GUID(IID, IID_IUpdaterObserver,0x7B416CFD,0x4216,0x4FD6,0xBD,0x83,0x7C,0x58,0x60,0x54,0x67,0x6E);
MIDL_DEFINE_GUID(IID, IID_IUpdater,0x63B8FFB1,0x5314,0x48C9,0x9C,0x57,0x93,0xEC,0x8B,0xC6,0x18,0x4B);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment