Summary Files Commits Branches @commit @diff @stats
path: root / Year 1 / Object-oriented Programming / Project 1 / src / Services / HallService.cpp
diff options
context:
space:
mode:
Commit24bdf39e6c21ab846f6c86803761d78a094e05c0 (patch)
Author
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-26 20:31:26 +0300
Committer
 Syndamia <kamen.d.mladenov@protonmail.com>
2022-05-26 20:31:26 +0300
Files1b2077b088098cc7ae6afc946b10a4d680110294 /Year 1/Object-oriented Programming/Project 1/src/Services/HallService.cpp
uni-projects-24bdf39e6c21ab846f6c86803761d78a094e05c0.tar
uni-projects-24bdf39e6c21ab846f6c86803761d78a094e05c0.tar.gz
uni-projects-24bdf39e6c21ab846f6c86803761d78a094e05c0.zip
Parentcbe944835cc0951a946d01f034b4d28ff9874a4e (diff)
Added files from project 1 (mirror)
1 files changed, 42 insertions, 0 deletions
-rw-r--r--Year 1/Object-oriented Programming/Project 1/src/Services/HallService.cpp42
diff --git a/Year 1/Object-oriented Programming/Project 1/src/Services/HallService.cpp b/Year 1/Object-oriented Programming/Project 1/src/Services/HallService.cpp
new file mode 100644
index 0000000..20c7a0f
--- /dev/null
+++ b/Year 1/Object-oriented Programming/Project 1/src/Services/HallService.cpp
@@ -0,0 +1,42 @@
+#include "HallService.h"
+#include <fstream>
+
+HallService::HallService(const Hall* halls, unsigned hallCount) {
+ this->halls = OrderedList<Hall>(halls, hallCount);
+}
+
+const OrderedList<Hall>& HallService::get_halls() const {
+ return halls;
+}
+
+/*!
+ * Looks for file named "hallsDatabse.fmits", which is just a binary file, and then reads it with the "read" function in events List.
+ *
+ * \return E_FileCouldNotBeOpened \b if The files couldn't be opened/Doesn't exist
+ * \return Success \b otherwise
+ */
+StatusCode HallService::load() {
+ std::ifstream inFile("hallsDatabase.fmits");
+ if (!inFile.is_open())
+ return E_FileCouldNotBeOpened;
+
+ halls.read(inFile);
+ inFile.close();
+ return Success;
+}
+
+/*!
+ * Looks for file named "hallsDatabse.fmits", which is just a binary file, and then writes to it with the "write" function in events List.
+ *
+ * \return E_FileCouldNotBeOpened \b if The files couldn't be opened
+ * \return Success \b otherwise
+ */
+StatusCode HallService::save() {
+ std::ofstream outFile("hallsDatabase.fmits");
+ if (!outFile.is_open())
+ return E_FileCouldNotBeOpened;
+
+ halls.write(outFile);
+ outFile.close();
+ return Success;
+}