changed all new_file to file, also make JobForceScan work
This commit is contained in:
@@ -80,14 +80,14 @@ class Entry(Base):
|
|||||||
type_id = Column(Integer, ForeignKey("file_type.id"))
|
type_id = Column(Integer, ForeignKey("file_type.id"))
|
||||||
type=relationship("FileType")
|
type=relationship("FileType")
|
||||||
dir_details = relationship( "Dir")
|
dir_details = relationship( "Dir")
|
||||||
file_details = relationship( "New_File" )
|
file_details = relationship( "File" )
|
||||||
in_dir = relationship ("Dir", secondary="entry_dir_link" )
|
in_dir = relationship ("Dir", secondary="entry_dir_link" )
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return "<id: {}, name: {}, type={}, dir_details={}, file_details={}, in_dir={}>".format(self.id, self.name, self.type, self.dir_details, self.file_details, self.in_dir)
|
return "<id: {}, name: {}, type={}, dir_details={}, file_details={}, in_dir={}>".format(self.id, self.name, self.type, self.dir_details, self.file_details, self.in_dir)
|
||||||
|
|
||||||
class New_File(Base):
|
class File(Base):
|
||||||
__tablename__ = "new_file"
|
__tablename__ = "file"
|
||||||
eid = Column(Integer, ForeignKey("entry.id"), primary_key=True )
|
eid = Column(Integer, ForeignKey("entry.id"), primary_key=True )
|
||||||
size_mb = Column(Integer, unique=False, nullable=False)
|
size_mb = Column(Integer, unique=False, nullable=False)
|
||||||
hash = Column(Integer, unique=True, nullable=True)
|
hash = Column(Integer, unique=True, nullable=True)
|
||||||
@@ -303,13 +303,13 @@ def JobScanNow(job):
|
|||||||
return
|
return
|
||||||
|
|
||||||
def JobForceScan(job):
|
def JobForceScan(job):
|
||||||
return
|
|
||||||
JobProgressState( job, "In Progress" )
|
JobProgressState( job, "In Progress" )
|
||||||
|
session.query(EntryDirLink).delete()
|
||||||
|
session.query(Dir).delete()
|
||||||
session.query(File).delete()
|
session.query(File).delete()
|
||||||
settings = session.query(Settings).first()
|
session.query(Entry).delete()
|
||||||
if settings == None:
|
session.commit()
|
||||||
raise Exception("Cannot create file data with no settings / import path is missing")
|
ProcessImportDirs(job)
|
||||||
settings.last_import_date = 0
|
|
||||||
FinishJob(job, "Completed (forced remove and recreation of all file data)")
|
FinishJob(job, "Completed (forced remove and recreation of all file data)")
|
||||||
MessageToFE( job.id, "success", "Completed (forced remove and recreation of all file data)" )
|
MessageToFE( job.id, "success", "Completed (forced remove and recreation of all file data)" )
|
||||||
session.commit()
|
session.commit()
|
||||||
@@ -350,7 +350,7 @@ def AddDir(job, dirname, path_prefix, in_dir):
|
|||||||
def AddFile(job, fname, type_str, fsize, in_dir ):
|
def AddFile(job, fname, type_str, fsize, in_dir ):
|
||||||
ftype = session.query(FileType).filter(FileType.name==type_str).first()
|
ftype = session.query(FileType).filter(FileType.name==type_str).first()
|
||||||
e=Entry( name=fname, type=ftype )
|
e=Entry( name=fname, type=ftype )
|
||||||
f=New_File( size_mb=fsize )
|
f=File( size_mb=fsize )
|
||||||
e.file_details.append(f)
|
e.file_details.append(f)
|
||||||
e.in_dir.append(in_dir)
|
e.in_dir.append(in_dir)
|
||||||
AddLogForJob(job, "Found new file: {}".format(fname) )
|
AddLogForJob(job, "Found new file: {}".format(fname) )
|
||||||
@@ -436,7 +436,6 @@ def FilesInDir( path ):
|
|||||||
|
|
||||||
|
|
||||||
def ProcessFilesInDir(job, e):
|
def ProcessFilesInDir(job, e):
|
||||||
time.sleep(0.3)
|
|
||||||
print("files in dir - process: {}".format(e.name))
|
print("files in dir - process: {}".format(e.name))
|
||||||
if e.type.name != 'Directory':
|
if e.type.name != 'Directory':
|
||||||
e.file_details[0].hash = md5( job, os.path.join( e.in_dir[0].path_prefix, e.name ) )
|
e.file_details[0].hash = md5( job, os.path.join( e.in_dir[0].path_prefix, e.name ) )
|
||||||
@@ -452,20 +451,18 @@ def ProcessFilesInDir(job, e):
|
|||||||
|
|
||||||
def JobGetFileDetails(job):
|
def JobGetFileDetails(job):
|
||||||
JobProgressState( job, "In Progress" )
|
JobProgressState( job, "In Progress" )
|
||||||
print("JobGetFileDetails:")
|
|
||||||
for jex in job.extra:
|
for jex in job.extra:
|
||||||
if jex.name =="path":
|
if jex.name =="path":
|
||||||
path=jex.value
|
path=jex.value
|
||||||
path=FixPath('static/{}'.format( os.path.basename(path[0:-1])))
|
path=FixPath('static/{}'.format( os.path.basename(path[0:-1])))
|
||||||
print(" for path={}".format( path ) )
|
print("DEBUG: JobGetFileDetails for path={}".format( path ) )
|
||||||
dir=session.query(Dir).filter(Dir.path_prefix==path).first()
|
dir=session.query(Dir).filter(Dir.path_prefix==path).first()
|
||||||
job.current_file_num = 0
|
job.current_file_num = 0
|
||||||
job.num_files = dir.num_files
|
job.num_files = dir.num_files
|
||||||
print("cfm set to 0 for job: {}, num_files: {}".format(job.id, job.num_files));
|
|
||||||
session.commit()
|
session.commit()
|
||||||
for e in FilesInDir( path ):
|
for e in FilesInDir( path ):
|
||||||
ProcessFilesInDir(job, e )
|
ProcessFilesInDir(job, e )
|
||||||
FinishJob(job, "File Details processed")
|
FinishJob(job, "DEBUG: File Details processed")
|
||||||
session.commit()
|
session.commit()
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user