@@ -148,41 +148,38 @@ public function get($file) {
148148
149149 /**
150150 * Create a CacheEntry from database row
151- *
152- * @param array $data
153- * @param IMimeTypeLoader $mimetypeLoader
154- * @return CacheEntry
155151 */
156- public static function cacheEntryFromData ($ data , IMimeTypeLoader $ mimetypeLoader ) {
157- //fix types
158- $ data ['name ' ] = (string )$ data ['name ' ];
159- $ data ['path ' ] = (string )$ data ['path ' ];
160- $ data ['fileid ' ] = (int )$ data ['fileid ' ];
161- $ data ['parent ' ] = (int )$ data ['parent ' ];
162- $ data ['size ' ] = Util::numericToNumber ($ data ['size ' ]);
163- $ data ['unencrypted_size ' ] = Util::numericToNumber ($ data ['unencrypted_size ' ] ?? 0 );
164- $ data ['mtime ' ] = (int )$ data ['mtime ' ];
165- $ data ['storage_mtime ' ] = (int )$ data ['storage_mtime ' ];
166- $ data ['encryptedVersion ' ] = (int )$ data ['encrypted ' ];
167- $ data ['encrypted ' ] = (bool )$ data ['encrypted ' ];
168- $ data ['storage_id ' ] = $ data ['storage ' ];
169- $ data ['storage ' ] = (int )$ data ['storage ' ];
170- $ data ['mimetype ' ] = $ mimetypeLoader ->getMimetypeById ($ data ['mimetype ' ]);
171- $ data ['mimepart ' ] = $ mimetypeLoader ->getMimetypeById ($ data ['mimepart ' ]);
172- if ($ data ['storage_mtime ' ] == 0 ) {
173- $ data ['storage_mtime ' ] = $ data ['mtime ' ];
174- }
152+ public static function cacheEntryFromData (array $ data , IMimeTypeLoader $ mimetypeLoader ): CacheEntry {
153+ $ normalized = [
154+ 'name ' => (string )$ data ['name ' ],
155+ 'etag ' => (string )$ data ['etag ' ],
156+ 'path ' => (string )$ data ['path ' ],
157+ 'fileid ' => (int )$ data ['fileid ' ],
158+ 'parent ' => (int )$ data ['parent ' ],
159+ 'size ' => Util::numericToNumber ($ data ['size ' ]),
160+ 'unencrypted_size ' => Util::numericToNumber ($ data ['unencrypted_size ' ] ?? 0 ),
161+ 'mtime ' => (int )$ data ['mtime ' ],
162+ 'storage_mtime ' => (int )($ data ['storage_mtime ' ] ?: $ data ['mtime ' ]),
163+ 'encryptedVersion ' => (int )$ data ['encrypted ' ],
164+ 'encrypted ' => (bool )$ data ['encrypted ' ],
165+ 'storage_id ' => $ data ['storage ' ],
166+ 'storage ' => (int )$ data ['storage ' ],
167+ 'mimetype ' => $ mimetypeLoader ->getMimetypeById ($ data ['mimetype ' ]),
168+ 'mimepart ' => $ mimetypeLoader ->getMimetypeById ($ data ['mimepart ' ]),
169+ 'permissions ' => (int )$ data ['permissions ' ],
170+ ];
171+
175172 if (isset ($ data ['f_permissions ' ])) {
176- $ data ['scan_permissions ' ] ??= $ data ['f_permissions ' ];
173+ $ normalized [ ' scan_permissions ' ] = $ data ['scan_permissions ' ] ?? $ data ['f_permissions ' ];
177174 }
178- $ data [ ' permissions ' ] = ( int ) $ data [ ' permissions ' ];
175+
179176 if (isset ($ data ['creation_time ' ])) {
180- $ data ['creation_time ' ] = (int )$ data ['creation_time ' ];
177+ $ normalized ['creation_time ' ] = (int )$ data ['creation_time ' ];
178+ $ normalized ['upload_time ' ] = (int )$ data ['upload_time ' ];
179+ $ normalized ['metadata_etag ' ] = (string )$ data ['metadata_etag ' ];
181180 }
182- if (isset ($ data ['upload_time ' ])) {
183- $ data ['upload_time ' ] = (int )$ data ['upload_time ' ];
184- }
185- return new CacheEntry ($ data );
181+
182+ return new CacheEntry ($ normalized );
186183 }
187184
188185 /**
0 commit comments