PathProvider is used for building paths for a maps generation.
| 113 | |
| 114 | |
| 115 | class PathProvider: |
| 116 | """ |
| 117 | PathProvider is used for building paths for a maps generation. |
| 118 | """ |
| 119 | |
| 120 | def __init__(self, build_path: AnyStr, build_name:AnyStr, mwm_version: AnyStr): |
| 121 | self.build_path = build_path |
| 122 | self.build_name = build_name |
| 123 | self.mwm_version = mwm_version |
| 124 | |
| 125 | create_if_not_exist_path(self.build_path) |
| 126 | |
| 127 | @property |
| 128 | @create_if_not_exist |
| 129 | def intermediate_data_path(self) -> AnyStr: |
| 130 | """ |
| 131 | intermediate_data_path contains intermediate files, |
| 132 | for example downloaded external files, that are needed for generation, |
| 133 | *.mwm.tmp files, etc. |
| 134 | """ |
| 135 | return os.path.join(self.build_path, "intermediate_data") |
| 136 | |
| 137 | @property |
| 138 | @create_if_not_exist |
| 139 | def cache_path(self) -> AnyStr: |
| 140 | """cache_path contains caches for nodes, ways, relations.""" |
| 141 | if not settings.CACHE_PATH: |
| 142 | return self.intermediate_data_path |
| 143 | |
| 144 | return os.path.join(settings.CACHE_PATH, self.build_name) |
| 145 | |
| 146 | @property |
| 147 | @create_if_not_exist |
| 148 | def data_path(self) -> AnyStr: |
| 149 | """It's a synonym for intermediate_data_path.""" |
| 150 | return self.intermediate_data_path |
| 151 | |
| 152 | @property |
| 153 | @create_if_not_exist |
| 154 | def intermediate_tmp_path(self) -> AnyStr: |
| 155 | """intermediate_tmp_path contains *.mwm.tmp files.""" |
| 156 | return os.path.join(self.intermediate_data_path, "tmp") |
| 157 | |
| 158 | @property |
| 159 | @create_if_not_exist |
| 160 | def mwm_path(self) -> AnyStr: |
| 161 | """mwm_path contains *.mwm files.""" |
| 162 | return os.path.join(self.build_path, self.mwm_version) |
| 163 | |
| 164 | @property |
| 165 | @create_if_not_exist |
| 166 | def log_path(self) -> AnyStr: |
| 167 | """log files.""" |
| 168 | return os.path.join(self.build_path, "logs") |
| 169 | |
| 170 | @property |
| 171 | @create_if_not_exist |
| 172 | def generation_borders_path(self) -> AnyStr: |