X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_common%2Ffsmongo.py;h=3c68a5f123463f21a97c858f524d784cbfc0a0b0;hb=7982b78adc05fc52c2259d900004ca570e38bdbf;hp=cd7f7f0e81f2f2196259997d8c638c61f576ff4c;hpb=b95cca6f0bd7e6c20e5ec945def54565de6ac02f;p=osm%2Fcommon.git diff --git a/osm_common/fsmongo.py b/osm_common/fsmongo.py index cd7f7f0..3c68a5f 100644 --- a/osm_common/fsmongo.py +++ b/osm_common/fsmongo.py @@ -35,6 +35,7 @@ class GridByteStream(BytesIO): self.filename = filename self.fs = fs self.mode = mode + self.file_type = "file" # Set "file" as default file_type self.__initialize__() @@ -110,6 +111,7 @@ class GridStringStream(StringIO): self.filename = filename self.fs = fs self.mode = mode + self.file_type = "file" # Set "file" as default file_type self.__initialize__() @@ -200,7 +202,7 @@ class FsMongo(FsBase): for directory in dir_cursor: os.makedirs(self.path + directory.filename, exist_ok=True) - file_cursor = self.fs.find({"metadata.type": {"$elemMatch": ["file", "sym"]}}, no_cursor_timeout=True) + file_cursor = self.fs.find({"metadata.type": {"$in": ["file", "sym"]}}, no_cursor_timeout=True) for writing_file in file_cursor: file_path = self.path + writing_file.filename @@ -210,7 +212,7 @@ class FsMongo(FsBase): if "permissions" in writing_file.metadata: if writing_file.metadata["type"] == "sym": os.chmod( - file_path, + file_path, writing_file.metadata["permissions"] | stat.S_IFLNK ) else: