qmgr: Add a stub implementation of IBackgroundCopyJob2.

This commit is contained in:
Dan Hipschman 2008-03-19 15:02:02 -07:00 committed by Alexandre Julliard
parent 764cf334d6
commit d664c276df
8 changed files with 215 additions and 43 deletions

1
.gitignore vendored
View File

@ -473,6 +473,7 @@ include/amstream.h
include/amvideo.h
include/austream.h
include/bits.h
include/bits1_5.h
include/comcat.h
include/config.h
include/control.h

View File

@ -168,7 +168,7 @@ static const IEnumBackgroundCopyFilesVtbl BITS_IEnumBackgroundCopyFiles_Vtbl =
BITS_IEnumBackgroundCopyFiles_GetCount
};
HRESULT EnumBackgroundCopyFilesConstructor(LPVOID *ppObj, IBackgroundCopyJob* iCopyJob)
HRESULT EnumBackgroundCopyFilesConstructor(LPVOID *ppObj, IBackgroundCopyJob2 *iCopyJob)
{
EnumBackgroundCopyFilesImpl *This;
BackgroundCopyFileImpl *file;

View File

@ -35,20 +35,21 @@ static void BackgroundCopyJobDestructor(BackgroundCopyJobImpl *This)
HeapFree(GetProcessHeap(), 0, This);
}
static ULONG WINAPI BITS_IBackgroundCopyJob_AddRef(IBackgroundCopyJob* iface)
static ULONG WINAPI BITS_IBackgroundCopyJob_AddRef(IBackgroundCopyJob2 *iface)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
return InterlockedIncrement(&This->ref);
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_QueryInterface(
IBackgroundCopyJob* iface, REFIID riid, LPVOID *ppvObject)
IBackgroundCopyJob2 *iface, REFIID riid, LPVOID *ppvObject)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
TRACE("IID: %s\n", debugstr_guid(riid));
if (IsEqualGUID(riid, &IID_IUnknown)
|| IsEqualGUID(riid, &IID_IBackgroundCopyJob))
|| IsEqualGUID(riid, &IID_IBackgroundCopyJob)
|| IsEqualGUID(riid, &IID_IBackgroundCopyJob2))
{
*ppvObject = &This->lpVtbl;
BITS_IBackgroundCopyJob_AddRef(iface);
@ -59,7 +60,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_QueryInterface(
return E_NOINTERFACE;
}
static ULONG WINAPI BITS_IBackgroundCopyJob_Release(IBackgroundCopyJob* iface)
static ULONG WINAPI BITS_IBackgroundCopyJob_Release(IBackgroundCopyJob2 *iface)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
ULONG ref = InterlockedDecrement(&This->ref);
@ -73,7 +74,7 @@ static ULONG WINAPI BITS_IBackgroundCopyJob_Release(IBackgroundCopyJob* iface)
/*** IBackgroundCopyJob methods ***/
static HRESULT WINAPI BITS_IBackgroundCopyJob_AddFileSet(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
ULONG cFileCount,
BG_FILE_INFO *pFileSet)
{
@ -89,7 +90,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_AddFileSet(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_AddFile(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
LPCWSTR RemoteUrl,
LPCWSTR LocalName)
{
@ -118,7 +119,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_AddFile(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_EnumFiles(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
IEnumBackgroundCopyFiles **ppEnum)
{
TRACE("\n");
@ -126,14 +127,14 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_EnumFiles(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_Suspend(
IBackgroundCopyJob* iface)
IBackgroundCopyJob2 *iface)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_Resume(
IBackgroundCopyJob* iface)
IBackgroundCopyJob2 *iface)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
HRESULT rv = S_OK;
@ -160,14 +161,14 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_Resume(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_Cancel(
IBackgroundCopyJob* iface)
IBackgroundCopyJob2 *iface)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_Complete(
IBackgroundCopyJob* iface)
IBackgroundCopyJob2 *iface)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
HRESULT rv = S_OK;
@ -209,7 +210,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_Complete(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetId(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
GUID *pVal)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
@ -218,7 +219,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetId(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetType(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
BG_JOB_TYPE *pVal)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
@ -231,7 +232,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetType(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetProgress(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
BG_JOB_PROGRESS *pVal)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
@ -250,7 +251,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetProgress(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetTimes(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
BG_JOB_TIMES *pVal)
{
FIXME("Not implemented\n");
@ -258,7 +259,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetTimes(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetState(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
BG_JOB_STATE *pVal)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
@ -272,7 +273,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetState(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetError(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
IBackgroundCopyError **ppError)
{
FIXME("Not implemented\n");
@ -280,7 +281,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetError(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetOwner(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
LPWSTR *pVal)
{
FIXME("Not implemented\n");
@ -288,7 +289,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetOwner(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetDisplayName(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
LPCWSTR Val)
{
FIXME("Not implemented\n");
@ -296,7 +297,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_SetDisplayName(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetDisplayName(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
LPWSTR *pVal)
{
BackgroundCopyJobImpl *This = (BackgroundCopyJobImpl *) iface;
@ -314,7 +315,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetDisplayName(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetDescription(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
LPCWSTR Val)
{
FIXME("Not implemented\n");
@ -322,7 +323,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_SetDescription(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetDescription(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
LPWSTR *pVal)
{
FIXME("Not implemented\n");
@ -330,7 +331,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetDescription(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetPriority(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
BG_JOB_PRIORITY Val)
{
FIXME("Not implemented\n");
@ -338,7 +339,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_SetPriority(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetPriority(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
BG_JOB_PRIORITY *pVal)
{
FIXME("Not implemented\n");
@ -346,7 +347,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetPriority(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetNotifyFlags(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
ULONG Val)
{
FIXME("Not implemented\n");
@ -354,7 +355,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_SetNotifyFlags(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetNotifyFlags(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
ULONG *pVal)
{
FIXME("Not implemented\n");
@ -362,7 +363,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetNotifyFlags(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetNotifyInterface(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
IUnknown *Val)
{
FIXME("Not implemented\n");
@ -370,7 +371,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_SetNotifyInterface(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetNotifyInterface(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
IUnknown **pVal)
{
FIXME("Not implemented\n");
@ -378,7 +379,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetNotifyInterface(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetMinimumRetryDelay(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
ULONG Seconds)
{
FIXME("Not implemented\n");
@ -386,7 +387,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_SetMinimumRetryDelay(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetMinimumRetryDelay(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
ULONG *Seconds)
{
FIXME("Not implemented\n");
@ -394,7 +395,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetMinimumRetryDelay(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetNoProgressTimeout(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
ULONG Seconds)
{
FIXME("Not implemented\n");
@ -402,7 +403,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_SetNoProgressTimeout(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetNoProgressTimeout(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
ULONG *Seconds)
{
FIXME("Not implemented\n");
@ -410,7 +411,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetNoProgressTimeout(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetErrorCount(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
ULONG *Errors)
{
FIXME("Not implemented\n");
@ -418,7 +419,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetErrorCount(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetProxySettings(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
BG_JOB_PROXY_USAGE ProxyUsage,
const WCHAR *ProxyList,
const WCHAR *ProxyBypassList)
@ -428,7 +429,7 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_SetProxySettings(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetProxySettings(
IBackgroundCopyJob* iface,
IBackgroundCopyJob2 *iface,
BG_JOB_PROXY_USAGE *pProxyUsage,
LPWSTR *pProxyList,
LPWSTR *pProxyBypassList)
@ -438,14 +439,81 @@ static HRESULT WINAPI BITS_IBackgroundCopyJob_GetProxySettings(
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_TakeOwnership(
IBackgroundCopyJob* iface)
IBackgroundCopyJob2 *iface)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetNotifyCmdLine(
IBackgroundCopyJob2 *iface,
LPCWSTR prog,
LPCWSTR params)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static const IBackgroundCopyJobVtbl BITS_IBackgroundCopyJob_Vtbl =
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetNotifyCmdLine(
IBackgroundCopyJob2 *iface,
LPWSTR prog,
LPWSTR params)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetReplyProgress(
IBackgroundCopyJob2 *iface,
BG_JOB_REPLY_PROGRESS *progress)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetReplyData(
IBackgroundCopyJob2 *iface,
byte **pBuffer,
UINT64 *pLength)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetReplyFileName(
IBackgroundCopyJob2 *iface,
LPCWSTR filename)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_GetReplyFileName(
IBackgroundCopyJob2 *iface,
LPWSTR *pFilename)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_SetCredentials(
IBackgroundCopyJob2 *iface,
BG_AUTH_CREDENTIALS *cred)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static HRESULT WINAPI BITS_IBackgroundCopyJob_RemoveCredentials(
IBackgroundCopyJob2 *iface,
BG_AUTH_TARGET target,
BG_AUTH_SCHEME scheme)
{
FIXME("Not implemented\n");
return E_NOTIMPL;
}
static const IBackgroundCopyJob2Vtbl BITS_IBackgroundCopyJob_Vtbl =
{
BITS_IBackgroundCopyJob_QueryInterface,
BITS_IBackgroundCopyJob_AddRef,
@ -482,6 +550,14 @@ static const IBackgroundCopyJobVtbl BITS_IBackgroundCopyJob_Vtbl =
BITS_IBackgroundCopyJob_SetProxySettings,
BITS_IBackgroundCopyJob_GetProxySettings,
BITS_IBackgroundCopyJob_TakeOwnership,
BITS_IBackgroundCopyJob_SetNotifyCmdLine,
BITS_IBackgroundCopyJob_GetNotifyCmdLine,
BITS_IBackgroundCopyJob_GetReplyProgress,
BITS_IBackgroundCopyJob_GetReplyData,
BITS_IBackgroundCopyJob_SetReplyFileName,
BITS_IBackgroundCopyJob_GetReplyFileName,
BITS_IBackgroundCopyJob_SetCredentials,
BITS_IBackgroundCopyJob_RemoveCredentials
};
HRESULT BackgroundCopyJobConstructor(LPCWSTR displayName, BG_JOB_TYPE type,

View File

@ -25,7 +25,7 @@
#include "objbase.h"
#define COBJMACROS
#include "bits.h"
#include "bits1_5.h"
#include <string.h>
#include "wine/list.h"
@ -33,7 +33,7 @@
/* Background copy job vtbl and related data */
typedef struct
{
const IBackgroundCopyJobVtbl *lpVtbl;
const IBackgroundCopyJob2Vtbl *lpVtbl;
LONG ref;
LPWSTR displayName;
BG_JOB_TYPE type;
@ -106,7 +106,7 @@ HRESULT BackgroundCopyFileConstructor(BackgroundCopyJobImpl *owner,
LPCWSTR remoteName, LPCWSTR localName,
LPVOID *ppObj);
HRESULT EnumBackgroundCopyFilesConstructor(LPVOID *ppObj,
IBackgroundCopyJob* copyJob);
IBackgroundCopyJob2 *copyJob);
DWORD WINAPI fileTransfer(void *param);
void processJob(BackgroundCopyJobImpl *job);
BOOL processFile(BackgroundCopyFileImpl *file, BackgroundCopyJobImpl *job);

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2007 Google (Roy Shea)
* Copyright (C) 2007, 2008 Google (Roy Shea, Dan Hipschman)
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@ -17,3 +17,6 @@
*/
#include "bits.idl"
#define DO_NO_IMPORTS
#include "bits1_5.idl"

View File

@ -1,5 +1,5 @@
/*
* Copyright 2007 Google (Roy Shea)
* Copyright 2007, 2008 Google (Roy Shea, Dan Hipschman)
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@ -17,3 +17,6 @@
*/
#include "bits.idl"
#define DO_NO_IMPORTS
#include "bits1_5.idl"

View File

@ -11,6 +11,7 @@ IDL_H_SRCS = \
amvideo.idl \
austream.idl \
bits.idl \
bits1_5.idl \
comcat.idl \
control.idl \
d3d10.idl \

88
include/bits1_5.idl Normal file
View File

@ -0,0 +1,88 @@
/*
* Background Intelligent Transfer Service (BITS) 1.5 interface
*
* Copyright 2008 Google (Dan Hipschman)
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*
*/
#ifndef DO_NO_IMPORTS
import "bits.idl";
#endif
[
uuid(54b50739-686f-45eb-9dff-d6a9a0faa9af),
odl
]
interface IBackgroundCopyJob2 : IBackgroundCopyJob
{
HRESULT SetNotifyCmdLine([unique] LPCWSTR prog, [unique] LPCWSTR params);
HRESULT GetNotifyCmdLine([out] LPWSTR prog, [out] LPWSTR params);
typedef struct _BG_JOB_REPLY_PROGRESS
{
UINT64 BytesTotal;
UINT64 BytesTransferred;
} BG_JOB_REPLY_PROGRESS;
HRESULT GetReplyProgress([in, out] BG_JOB_REPLY_PROGRESS *progress);
HRESULT GetReplyData([out, size_is( , (unsigned long) *pLength)] byte **pBuffer,
[in, out, unique] UINT64 *pLength);
HRESULT SetReplyFileName([unique] LPCWSTR filename);
HRESULT GetReplyFileName([out] LPWSTR *pFilename);
typedef enum
{
BG_AUTH_TARGET_SERVER = 1,
BG_AUTH_TARGET_PROXY
} BG_AUTH_TARGET;
typedef enum
{
BG_AUTH_SCHEME_BASIC = 1,
BG_AUTH_SCHEME_DIGEST,
BG_AUTH_SCHEME_NTLM,
BG_AUTH_SCHEME_NEGOTIATE,
BG_AUTH_SCHEME_PASSPORT
} BG_AUTH_SCHEME;
typedef struct
{
LPWSTR UserName;
LPWSTR Password;
} BG_BASIC_CREDENTIALS;
typedef BG_BASIC_CREDENTIALS *PBG_BASIC_CREDENTIALS;
typedef [switch_type(BG_AUTH_SCHEME)] union
{
[case(BG_AUTH_SCHEME_BASIC, BG_AUTH_SCHEME_DIGEST, BG_AUTH_SCHEME_NTLM,
BG_AUTH_SCHEME_NEGOTIATE, BG_AUTH_SCHEME_PASSPORT)]
BG_BASIC_CREDENTIALS Basic;
[default]
;
} BG_AUTH_CREDENTIALS_UNION;
typedef struct
{
BG_AUTH_TARGET Target;
BG_AUTH_SCHEME Scheme;
[switch_is(Scheme)] BG_AUTH_CREDENTIALS_UNION Credentials;
} BG_AUTH_CREDENTIALS;
typedef BG_AUTH_CREDENTIALS *PBG_AUTH_CREDENTIALS;
HRESULT SetCredentials(BG_AUTH_CREDENTIALS *cred);
HRESULT RemoveCredentials(BG_AUTH_TARGET target, BG_AUTH_SCHEME scheme);
}