Reverted change made in 6.71.09 to gam <UserTypeEntity> print filelist

This commit is contained in:
Ross Scroggs
2024-03-04 10:41:43 -08:00
parent a3b814f758
commit 7c8a87673a
7 changed files with 35 additions and 13 deletions

View File

@@ -6751,7 +6751,7 @@ gam <UserTypeEntity> print filelist [todrive <ToDriveAttribute>*]
[select <DriveFileEntity> [selectsubquery <QueryDriveFile>]
[(norecursion [<Boolean>])|(depth <Number>)] [showparent]]
[anyowner|(showownedby any|me|others)]
[showmimetype [not] <MimeTypeList>]
[showmimetype [not] <MimeTypeList>] [mimetypeinquery [<Boolean>]]
[sizefield quotabytesused|size] [minimumfilesize <Integer>] [maximumfilesize <Integer>]
[filenamematchpattern <RegularExpression>]
<PermissionMatch>* [<PermissionMatchMode>] [<PermissionMatchAction>] [pmfilter] [oneitemperrow]

View File

@@ -2,6 +2,16 @@
Merged GAM-Team version
6.71.10
Reverted change made in 6.71.09 to `gam <UserTypeEntity> print filelist` when `showmimetype` and `filepath|fullpath`
were both specified. The change improved the performance when `showmimetype` selected a small number of files;
the information for just those files was downloaded and then additional API calls were made to construct the file paths.
However, if a large number of files were selected, the additional APIs calls decreased performance.
Added option `mimetypeinquery` can be used when you expect the query to return a small number of files
relative to the total number of files.
6.71.09
Improved the performance of `gam <UserTypeEntity> print filelist` when `showmimetype` and `filepath|fullpath`

View File

@@ -53264,7 +53264,7 @@ SIZE_FIELD_CHOICE_MAP = {
# [select <DriveFileEntity> [selectsubquery <QueryDriveFile>]
# [(norecursion [<Boolean>])|(depth <Number>)] [showparent]]
# [anyowner|(showownedby any|me|others)]
# [showmimetype [not] <MimeTypeList>]
# [showmimetype [not] <MimeTypeList>] [mimetypeinquery [<Boolean>]]
# [sizefield quotabytesused|size] [minimumfilesize <Integer>] [maximumfilesize <Integer>]
# [filenamematchpattern <RegularExpression>]
# <PermissionMatch>* [<PermissionMatchMode>] [<PermissionMatchAction>] [pmfilter] [oneitemperrow]
@@ -53501,7 +53501,7 @@ def printFileList(users):
csvPF = CSVPrintFile('Owner', indexedTitles=DRIVE_INDEXED_TITLES)
FJQC = FormatJSONQuoteChar(csvPF)
addPathsToJSON = countsRowFilter = buildTree = countsOnly = filepath = fullpath = getPermissionsForSharedDrives = \
noRecursion = oneItemPerRow = stripCRsFromName = \
mimeTypeInQuery = noRecursion = oneItemPerRow = stripCRsFromName = \
showParentsIdsAsList = showDepth = showParent = showSize = showMimeTypeSize = showSource = False
sizeField = 'quotaBytesUsed'
pathDelimiter = '/'
@@ -53541,6 +53541,8 @@ def printFileList(users):
selectSubQuery = getString(Cmd.OB_QUERY, minLen=0)
elif myarg == 'norecursion':
noRecursion = getBoolean()
elif myarg == 'mimetypeinquery':
mimeTypeInQuery = getBoolean()
elif myarg == 'depth':
maxdepth = getInteger(minVal=-1)
elif myarg == 'showdepth':
@@ -53635,7 +53637,7 @@ def printFileList(users):
and not fileIdEntity['shareddrivefilequery']
and _simpleFileIdEntityList(fileIdEntity['list']))
incrementalPrint = buildTree and (not filepath) and noSelect and not DLP.locationSet and not showParent
if buildTree and noSelect and not DLP.locationSet and not showParent:
if buildTree and ((not filepath) or mimeTypeInQuery) and noSelect and not DLP.locationSet and not showParent:
DLP.AddMimeTypeToQuery()
if buildTree:
if not fileIdEntity.get('shareddrive'):