12#include <osl/file.hxx>
19 ::std::function<
void ()> aCallback)
20 : mTimer(
"SVTools FileChangedChecker Timer")
21 , mFileName(
std::move(aFilename))
23 , mpCallback(
std::move(aCallback))
40 , mFileName(
std::move(aFilename))
64 osl::DirectoryItem aItem;
65 if (osl::FileBase::E_None != osl::DirectoryItem::get(
mFileName, aItem))
70 osl::FileStatus aStatus( osl_FileStatus_Mask_ModifyTime );
71 if (osl::FileBase::E_None != aItem.getFileStatus(aStatus))
74 o_rValue = aStatus.getModifyTime();
81 TimeValue newTime={0,0};
104 SAL_INFO(
"svtools",
"Timeout Called");
107 SAL_INFO(
"svtools",
"File modified");
Periodically checks if a file has been modified.
bool SVT_DLLPRIVATE getCurrentModTime(TimeValue &o_rValue) const
bool hasFileChanged(bool bUpdate=true)
FileChangedChecker(OUString aFilename, ::std::function< void()> aCallback)
::std::function< void()> mpCallback
void SetPriority(TaskPriority ePriority)
void SetTimeout(sal_uInt64 nTimeoutMs)
void SetInvokeHandler(const Link< Timer *, void > &rLink)
virtual void Start(bool bStartTimer=true) override
IMPL_LINK_NOARG(FileChangedChecker, TimerHandler, Timer *, void)
#define LINK(Instance, Class, Member)
#define SAL_INFO(area, stream)