-
Notifications
You must be signed in to change notification settings - Fork 3
/
dgCheckFileFresh.py
90 lines (76 loc) · 2.18 KB
/
dgCheckFileFresh.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#!/usr/bin/env python
"""
===================
pyCheckFileFresh.py
===================
This program allows a file to be checked for freshness.
If the file was edited on the same date as this function is run then the file is considered to be fresh.
==========
Background
==========
===
API
===
"""
from __future__ import print_function
from builtins import str
from builtins import object
import os
import datetime
import time
verboseMode = False
freshFlag = True
class CheckFreshness(object):
"""Class which checks a file to see if it is fresh
"""
## Returns True if the file was saved today, False otherwise
def isFresh(self, pathToFile):
"""
:param pathToFile: The path/filename to check
:returns: True if the file is fresh (saved today), False otherwise
isFresh checks to see if the file was created today
"""
t = os.path.getmtime(pathToFile)
fileTimeDateStamp = datetime.datetime.fromtimestamp(t)
fileDateStamp = str(fileTimeDateStamp)
fileDateStamp = fileDateStamp[0:fileDateStamp.find(' ')]
currentDate = time.strftime("%Y-%m-%d")
if fileDateStamp == currentDate:
if verboseMode:
print('File is fresh')
return True
else:
if verboseMode:
print('file was not fresh')
return False
def setVerboseMode(self,verboseFlag):
"""
:param verboseFlag: Value To set verbose Flag True False
Sets the verbose flag.
The verbose flag can be used to see into the actions
of this module without changing the module in debug.
The verbose messages go to the command prompt window.
"""
global verboseMode
verboseMode = verboseFlag
if verboseMode:
print('setVerboseMode: setting VerboseMode flag to Verbose')
def setFreshCheckFlag(self,freshnessFlag):
"""
:param freshnessFlag: Flag that says whether or not to check freshness
Sets the fresh check flag
"""
global freshFlag
global verboseMode
if verboseMode:
print('CheckFreshness:setFreshCheckFlag: setting freshness flag', freshnessFlag)
freshFlag = freshnessFlag
def getFreshFlag(self):
"""
:returns: fresh flag
"""
global freshFlag
global verboseMode
if verboseMode:
print('CheckFreshness:getFreshFlag: getting freshness flag',freshFlag)
return freshFlag