Skip to content

Commit c033985

Browse files
authored
Merge pull request #3 from ESKARIA/feature/doc
doc
2 parents 44b51ca + 250c197 commit c033985

42 files changed

Lines changed: 5672 additions & 1 deletion

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 88 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,90 @@
11
# ESFileManager
22

3-
A description of this package.
3+
A simple library for use iOS File manager
4+
5+
# Usage
6+
7+
## Standart use
8+
9+
1) Import in project
10+
11+
```swift
12+
import ESFileManager
13+
```
14+
15+
[model of log](https://eskaria.github.io/AdvancedLogger/Structs.html#/s:14AdvancedLogger0aB5ModelV)
16+
17+
2) Create property of ESFileManager. In argument used default way for write/read data, but you can use init with default value "Document folder without iCloud sync". You can read about [this folders and when use kind of this](https://eskaria.github.io/ESFileManager/Enums/ESFileExtensionType.html)
18+
19+
```swift
20+
private var fileManager: ESFileManagerProtocol = ESFileManager()
21+
```
22+
23+
3) You can read data with [read func](https://eskaria.github.io/ESFileManager/Protocols/ESFileManagerProtocol.html#/s:13ESFileManager0aB8ProtocolP4read11fileStorage2at10completionyAA0A9NameModelV_AA0aB9DirectoryOSgyAA0aJ0VSg_s5Error_pSgtcSgtF). For read and write used [model of file](https://eskaria.github.io/ESFileManager/Structs/ESFileModel.html) which contain [model with name and extension of file](https://eskaria.github.io/ESFileManager/Structs/ESFileNameModel.html)
24+
25+
26+
```swift
27+
private func readFile() {
28+
// create name and extension of file to read
29+
let file = ESFileNameModel(name: "SwiftDoc", fileExtension: .txt)
30+
31+
//read this file. At = nil cause we use default directory
32+
fileManager.read(fileStorage: file, at: nil) { (file, error) in
33+
//fetch error
34+
if let error = error {
35+
//fetch error
36+
return
37+
}
38+
//fetch empty state of file
39+
guard let data = file?.data else {
40+
// file is empty!
41+
return
42+
}
43+
//show our file
44+
let stringFile = String(data: data, encoding: .utf8)
45+
//You successful read the file!
46+
}
47+
}
48+
```
49+
50+
3) You can write your file on disk with [write func](https://eskaria.github.io/ESFileManager/Protocols/ESFileManagerProtocol.html#/s:13ESFileManager0aB8ProtocolP5write4file2at10completionyAA0A5ModelV_AA0aB9DirectoryOSgys5Error_pSgcSgtF)
51+
52+
```swift
53+
private func writeFile() {
54+
// create data to write
55+
let data = "Swift is amazing!".data(using: .utf8)
56+
57+
let fileName = ESFileNameModel(name: "SwiftDoc", fileExtension: .txt)
58+
let file = ESFileModel(data: data, name: fileName)
59+
60+
// write data. At = nil cause we use default directory from prepareVC method
61+
fileManager.write(file: file, at: nil) { (error) in
62+
if let error = error {
63+
//error
64+
return
65+
}
66+
//You successful recorded the file!
67+
}
68+
}
69+
```
70+
71+
4) For remove file you [remove func](https://eskaria.github.io/ESFileManager/Protocols/ESFileManagerProtocol.html#/s:13ESFileManager0aB8ProtocolP6remove4file2at10completionyAA0A9NameModelV_AA0aB9DirectoryOSgys5Error_pSgcSgtF)
72+
73+
```swift
74+
private func removeFile() {
75+
// create name and extension of file to remove
76+
let file = ESFileNameModel(name: "SwiftDoc", fileExtension: .txt)
77+
78+
//remove this file. At = nil cause we use default directory
79+
fileManager.remove(file: file, at: nil) { (error) in
80+
//fetch error
81+
if let error = error {
82+
// fetch error
83+
return
84+
}
85+
//You successful remove this file!
86+
}
87+
}
88+
```
89+
90+
5) You can geet list of files in your directory with [list func](https://eskaria.github.io/ESFileManager/Protocols/ESFileManagerProtocol.html#/s:13ESFileManager0aB8ProtocolP9listFiles2at10completionyAA0aB9DirectoryOSg_ySayAA0A9NameModelVGSg_s5Error_pSgtcSgtF)

docs/Enums.html

Lines changed: 143 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,143 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<title>Enumerations Reference</title>
5+
<link rel="stylesheet" type="text/css" href="css/jazzy.css" />
6+
<link rel="stylesheet" type="text/css" href="css/highlight.css" />
7+
<meta charset='utf-8'>
8+
<script src="js/jquery.min.js" defer></script>
9+
<script src="js/jazzy.js" defer></script>
10+
11+
</head>
12+
<body>
13+
<a name="//apple_ref/swift/Section/Enumerations" class="dashAnchor"></a>
14+
<a title="Enumerations Reference"></a>
15+
<header>
16+
<div class="content-wrapper">
17+
<p><a href="index.html"> Docs</a> (89% documented)</p>
18+
</div>
19+
</header>
20+
<div class="content-wrapper">
21+
<p id="breadcrumbs">
22+
<a href="index.html"> Reference</a>
23+
<img id="carat" src="img/carat.png" />
24+
Enumerations Reference
25+
</p>
26+
</div>
27+
<div class="content-wrapper">
28+
<nav class="sidebar">
29+
<ul class="nav-groups">
30+
<li class="nav-group-name">
31+
<a href="Enums.html">Enumerations</a>
32+
<ul class="nav-group-tasks">
33+
<li class="nav-group-task">
34+
<a href="Enums/ESFileExtensionType.html">ESFileExtensionType</a>
35+
</li>
36+
<li class="nav-group-task">
37+
<a href="Enums/ESFileManagerDirectory.html">ESFileManagerDirectory</a>
38+
</li>
39+
</ul>
40+
</li>
41+
<li class="nav-group-name">
42+
<a href="Protocols.html">Protocols</a>
43+
<ul class="nav-group-tasks">
44+
<li class="nav-group-task">
45+
<a href="Protocols/ESFileManagerProtocol.html">ESFileManagerProtocol</a>
46+
</li>
47+
</ul>
48+
</li>
49+
<li class="nav-group-name">
50+
<a href="Structs.html">Structures</a>
51+
<ul class="nav-group-tasks">
52+
<li class="nav-group-task">
53+
<a href="Structs/ESFileManager.html">ESFileManager</a>
54+
</li>
55+
<li class="nav-group-task">
56+
<a href="Structs/ESFileModel.html">ESFileModel</a>
57+
</li>
58+
<li class="nav-group-task">
59+
<a href="Structs/ESFileNameModel.html">ESFileNameModel</a>
60+
</li>
61+
</ul>
62+
</li>
63+
</ul>
64+
</nav>
65+
<article class="main-content">
66+
<section>
67+
<section class="section">
68+
<h1>Enumerations</h1>
69+
<p>The following enumerations are available globally.</p>
70+
71+
</section>
72+
<section class="section task-group-section">
73+
<div class="task-group">
74+
<ul>
75+
<li class="item">
76+
<div>
77+
<code>
78+
<a name="/s:13ESFileManager0A13ExtensionTypeO"></a>
79+
<a name="//apple_ref/swift/Enum/ESFileExtensionType" class="dashAnchor"></a>
80+
<a class="token" href="#/s:13ESFileManager0A13ExtensionTypeO">ESFileExtensionType</a>
81+
</code>
82+
</div>
83+
<div class="height-container">
84+
<div class="pointer-container"></div>
85+
<section class="section">
86+
<div class="pointer"></div>
87+
<div class="abstract">
88+
<p>File format for write on disk</p>
89+
90+
<a href="Enums/ESFileExtensionType.html" class="slightly-smaller">See more</a>
91+
</div>
92+
<div class="declaration">
93+
<h4>Declaration</h4>
94+
<div class="language">
95+
<p class="aside-title">Swift</p>
96+
<pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">ESFileExtensionType</span></code></pre>
97+
98+
</div>
99+
</div>
100+
</section>
101+
</div>
102+
</li>
103+
<li class="item">
104+
<div>
105+
<code>
106+
<a name="/s:13ESFileManager0aB9DirectoryO"></a>
107+
<a name="//apple_ref/swift/Enum/ESFileManagerDirectory" class="dashAnchor"></a>
108+
<a class="token" href="#/s:13ESFileManager0aB9DirectoryO">ESFileManagerDirectory</a>
109+
</code>
110+
</div>
111+
<div class="height-container">
112+
<div class="pointer-container"></div>
113+
<section class="section">
114+
<div class="pointer"></div>
115+
<div class="abstract">
116+
<p>Enum with diffrent type of storage. You can check case for additional inforamtion</p>
117+
118+
<a href="Enums/ESFileManagerDirectory.html" class="slightly-smaller">See more</a>
119+
</div>
120+
<div class="declaration">
121+
<h4>Declaration</h4>
122+
<div class="language">
123+
<p class="aside-title">Swift</p>
124+
<pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">ESFileManagerDirectory</span></code></pre>
125+
126+
</div>
127+
</div>
128+
</section>
129+
</div>
130+
</li>
131+
</ul>
132+
</div>
133+
</section>
134+
</section>
135+
<section id="footer">
136+
<p>&copy; 2020 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2020-05-16)</p>
137+
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
138+
</section>
139+
</article>
140+
</div>
141+
</body>
142+
</div>
143+
</html>
Lines changed: 147 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,147 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<title>ESFileExtensionType Enumeration Reference</title>
5+
<link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
6+
<link rel="stylesheet" type="text/css" href="../css/highlight.css" />
7+
<meta charset='utf-8'>
8+
<script src="../js/jquery.min.js" defer></script>
9+
<script src="../js/jazzy.js" defer></script>
10+
11+
</head>
12+
<body>
13+
<a name="//apple_ref/swift/Enum/ESFileExtensionType" class="dashAnchor"></a>
14+
<a title="ESFileExtensionType Enumeration Reference"></a>
15+
<header>
16+
<div class="content-wrapper">
17+
<p><a href="../index.html"> Docs</a> (89% documented)</p>
18+
</div>
19+
</header>
20+
<div class="content-wrapper">
21+
<p id="breadcrumbs">
22+
<a href="../index.html"> Reference</a>
23+
<img id="carat" src="../img/carat.png" />
24+
ESFileExtensionType Enumeration Reference
25+
</p>
26+
</div>
27+
<div class="content-wrapper">
28+
<nav class="sidebar">
29+
<ul class="nav-groups">
30+
<li class="nav-group-name">
31+
<a href="../Enums.html">Enumerations</a>
32+
<ul class="nav-group-tasks">
33+
<li class="nav-group-task">
34+
<a href="../Enums/ESFileExtensionType.html">ESFileExtensionType</a>
35+
</li>
36+
<li class="nav-group-task">
37+
<a href="../Enums/ESFileManagerDirectory.html">ESFileManagerDirectory</a>
38+
</li>
39+
</ul>
40+
</li>
41+
<li class="nav-group-name">
42+
<a href="../Protocols.html">Protocols</a>
43+
<ul class="nav-group-tasks">
44+
<li class="nav-group-task">
45+
<a href="../Protocols/ESFileManagerProtocol.html">ESFileManagerProtocol</a>
46+
</li>
47+
</ul>
48+
</li>
49+
<li class="nav-group-name">
50+
<a href="../Structs.html">Structures</a>
51+
<ul class="nav-group-tasks">
52+
<li class="nav-group-task">
53+
<a href="../Structs/ESFileManager.html">ESFileManager</a>
54+
</li>
55+
<li class="nav-group-task">
56+
<a href="../Structs/ESFileModel.html">ESFileModel</a>
57+
</li>
58+
<li class="nav-group-task">
59+
<a href="../Structs/ESFileNameModel.html">ESFileNameModel</a>
60+
</li>
61+
</ul>
62+
</li>
63+
</ul>
64+
</nav>
65+
<article class="main-content">
66+
<section>
67+
<section class="section">
68+
<h1>ESFileExtensionType</h1>
69+
<div class="declaration">
70+
<div class="language">
71+
<pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">enum</span> <span class="kt">ESFileExtensionType</span></code></pre>
72+
73+
</div>
74+
</div>
75+
<p>File format for write on disk</p>
76+
77+
</section>
78+
<section class="section task-group-section">
79+
<div class="task-group">
80+
<ul>
81+
<li class="item">
82+
<div>
83+
<code>
84+
<a name="/s:13ESFileManager0A13ExtensionTypeO3txtyA2CmF"></a>
85+
<a name="//apple_ref/swift/Element/txt" class="dashAnchor"></a>
86+
<a class="token" href="#/s:13ESFileManager0A13ExtensionTypeO3txtyA2CmF">txt</a>
87+
</code>
88+
</div>
89+
<div class="height-container">
90+
<div class="pointer-container"></div>
91+
<section class="section">
92+
<div class="pointer"></div>
93+
<div class="abstract">
94+
<p>Undocumented</p>
95+
96+
</div>
97+
<div class="declaration">
98+
<h4>Declaration</h4>
99+
<div class="language">
100+
<p class="aside-title">Swift</p>
101+
<pre class="highlight swift"><code><span class="k">case</span> <span class="n">txt</span></code></pre>
102+
103+
</div>
104+
</div>
105+
</section>
106+
</div>
107+
</li>
108+
<li class="item">
109+
<div>
110+
<code>
111+
<a name="/s:13ESFileManager0A13ExtensionTypeO6customyACSS_tcACmF"></a>
112+
<a name="//apple_ref/swift/Element/custom(extensionName:)" class="dashAnchor"></a>
113+
<a class="token" href="#/s:13ESFileManager0A13ExtensionTypeO6customyACSS_tcACmF">custom(extensionName:<wbr>)</a>
114+
</code>
115+
</div>
116+
<div class="height-container">
117+
<div class="pointer-container"></div>
118+
<section class="section">
119+
<div class="pointer"></div>
120+
<div class="abstract">
121+
<p>Undocumented</p>
122+
123+
</div>
124+
<div class="declaration">
125+
<h4>Declaration</h4>
126+
<div class="language">
127+
<p class="aside-title">Swift</p>
128+
<pre class="highlight swift"><code><span class="k">case</span> <span class="nf">custom</span><span class="p">(</span><span class="nv">extensionName</span><span class="p">:</span> <span class="kt">String</span><span class="p">)</span></code></pre>
129+
130+
</div>
131+
</div>
132+
</section>
133+
</div>
134+
</li>
135+
</ul>
136+
</div>
137+
</section>
138+
</section>
139+
<section id="footer">
140+
<p>&copy; 2020 <a class="link" href="" target="_blank" rel="external"></a>. All rights reserved. (Last updated: 2020-05-16)</p>
141+
<p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
142+
</section>
143+
</article>
144+
</div>
145+
</body>
146+
</div>
147+
</html>

0 commit comments

Comments
 (0)