Merge "[GENERAL] Add Andreas Geissler as committer."
[oom/offline-installer.git] / build / download / http_file.py
1 # -*- coding: utf-8 -*-
2
3 #   COPYRIGHT NOTICE STARTS HERE
4
5 #   Copyright 2019 © Samsung Electronics Co., Ltd.
6 #
7 #   Licensed under the Apache License, Version 2.0 (the "License");
8 #   you may not use this file except in compliance with the License.
9 #   You may obtain a copy of the License at
10 #
11 #       http://www.apache.org/licenses/LICENSE-2.0
12 #
13 #   Unless required by applicable law or agreed to in writing, software
14 #   distributed under the License is distributed on an "AS IS" BASIS,
15 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 #   See the License for the specific language governing permissions and
17 #   limitations under the License.
18
19 #   COPYRIGHT NOTICE ENDS HERE
20
21 import os
22
23
24 class HttpFile:
25     """
26     File to be saved
27     """
28
29     def __init__(self, name, content, dst):
30         self._name = name
31         self._content = content
32         self._dst = dst
33
34     @property
35     def name(self):
36         """
37         Name of the file
38         """
39         return self._name
40
41     def save_to_file(self):
42         """
43         Save it to disk
44         """
45         dst_dir = os.path.dirname(self._dst)
46         if not os.path.exists(dst_dir):
47             os.makedirs(dst_dir)
48         with open(self._dst, 'wb') as dst_file:
49             dst_file.write(self._content)