Split PolicyResult declaration and definition 66/27766/11
authorZofia Abramowska <z.abramowska@samsung.com>
Thu, 18 Sep 2014 15:33:53 +0000 (17:33 +0200)
committerLukasz Wojciechowski <l.wojciechow@partner.samsung.com>
Thu, 16 Oct 2014 09:58:26 +0000 (02:58 -0700)
PolicyResult header will be included in package for external plugin
implementations.

Change-Id: Ic5224af395b9fd86f57138566295961e80ee8f12

src/common/CMakeLists.txt
src/common/types/PolicyResult.cpp [new file with mode: 0644]
src/common/types/PolicyResult.h
test/CMakeLists.txt

index d52ddd5..461450a 100644 (file)
@@ -49,6 +49,7 @@ SET(COMMON_SOURCES
     ${COMMON_PATH}/types/PolicyBucket.cpp
     ${COMMON_PATH}/types/PolicyKey.cpp
     ${COMMON_PATH}/types/PolicyKeyHelpers.cpp
+    ${COMMON_PATH}/types/PolicyResult.cpp
     )
 
 IF (CMAKE_BUILD_TYPE MATCHES "DEBUG")
diff --git a/src/common/types/PolicyResult.cpp b/src/common/types/PolicyResult.cpp
new file mode 100644 (file)
index 0000000..010139d
--- /dev/null
@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ *    Licensed under the Apache License, Version 2.0 (the "License");
+ *    you may not use this file except in compliance with the License.
+ *    You may obtain a copy of the License at
+ *
+ *        http://www.apache.org/licenses/LICENSE-2.0
+ *
+ *    Unless required by applicable law or agreed to in writing, software
+ *    distributed under the License is distributed on an "AS IS" BASIS,
+ *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *    See the License for the specific language governing permissions and
+ *    limitations under the License.
+ */
+/**
+ * @file        src/common/types/PolicyResult.cpp
+ * @author      Aleksander Zdyb <a.zdyb@samsung.com>
+ * @author      Zofia Abramowska <z.abramowska@samsung.com>
+ * @version     1.0
+ * @brief       PolicyResult implementation
+ */
+
+#include "PolicyResult.h"
+
+namespace Cynara {
+
+PolicyResult::PolicyResult() : m_type(PredefinedPolicyType::DENY) {}
+
+PolicyResult::PolicyResult(const PolicyType &policyType) : m_type(policyType) {}
+
+PolicyResult::PolicyResult(const PolicyType &policyType, const PolicyMetadata &metadata)
+    : m_type(policyType) , m_metadata(metadata) {}
+
+const PolicyType &PolicyResult::policyType(void) const {
+    return m_type;
+}
+
+const PolicyResult::PolicyMetadata &PolicyResult::metadata(void) const {
+    return m_metadata;
+}
+
+bool PolicyResult::operator <(const PolicyResult &other) const {
+    return this->m_type < other.m_type;
+}
+
+bool PolicyResult::operator ==(const PolicyResult &other) const {
+    return std::tie(m_type, m_metadata) == std::tie(other.m_type, other.m_metadata);
+}
+
+bool PolicyResult::operator !=(const PolicyResult &other) const {
+    return !(*this == other);
+}
+
+bool PolicyResult::operator ==(const PolicyType &policyType) const {
+    return (m_type == policyType) && m_metadata.empty();
+}
+
+bool PolicyResult::operator !=(const PolicyType &policyType) const {
+    return !(*this == policyType);
+}
+
+} // namespace Cynara
+
index 28974d7..ae81d15 100644 (file)
 /**
  * @file        src/common/types/PolicyResult.h
  * @author      Aleksander Zdyb <a.zdyb@samsung.com>
+ * @author      Zofia Abramowska <z.abramowska@samsung.com>
  * @version     1.0
  * @brief       Definitions of PolicyResult and friends
  */
 
-#ifndef POLICYRESULT_H_
-#define POLICYRESULT_H_
+#ifndef SRC_COMMON_TYPES_POLICYRESULT_H_
+#define SRC_COMMON_TYPES_POLICYRESULT_H_
 
 #include "types/PolicyType.h"
 
@@ -33,47 +34,23 @@ class PolicyResult {
 public:
     typedef std::string PolicyMetadata;
 
-public:
-    PolicyResult() : m_type(PredefinedPolicyType::DENY) {}
-    PolicyResult(const PolicyType &policyType) : m_type(policyType) {}
-    PolicyResult(const PolicyType &policyType, const PolicyMetadata &metadata)
-        : m_type(policyType), m_metadata(metadata) {}
+    PolicyResult();
+    PolicyResult(const PolicyType &policyType);
+    PolicyResult(const PolicyType &policyType, const PolicyMetadata &metadata);
+
+    const PolicyType &policyType(void) const;
+    const PolicyMetadata &metadata(void) const;
+    bool operator <(const PolicyResult &other) const;
+    bool operator ==(const PolicyResult &other) const;
+    bool operator !=(const PolicyResult &other) const;
+    bool operator ==(const PolicyType &policyType) const;
+    bool operator !=(const PolicyType &policyType) const;
 
 private:
     PolicyType m_type;
     PolicyMetadata m_metadata;
-
-public:
-    const PolicyType &policyType() const {
-        return m_type;
-    }
-
-    const PolicyMetadata& metadata() const {
-        return m_metadata;
-    }
-
-    bool operator <(const PolicyResult &other) const {
-        return this->m_type < other.m_type;
-    }
-
-    bool operator ==(const PolicyResult &other) const {
-        return std::tie(m_type, m_metadata) == std::tie(other.m_type, other.m_metadata);
-    }
-
-    bool operator !=(const PolicyResult &other) const {
-        return !(*this == other);
-    }
-
-    bool operator ==(const PolicyType &policyType) const {
-        return (m_type == policyType) && m_metadata.empty();
-    }
-
-    bool operator !=(const PolicyType &policyType) const {
-        return !(*this == policyType);
-    }
 };
 
 } // namespace Cynara
 
-
-#endif /* POLICYRESULT_H_ */
+#endif /* SRC_COMMON_TYPES_POLICYRESULT_H_ */
index 47bcfab..62bdbaa 100644 (file)
@@ -25,6 +25,7 @@ SET(CYNARA_SOURCES_FOR_TESTS
     ${CYNARA_SRC}/common/types/PolicyBucket.cpp
     ${CYNARA_SRC}/common/types/PolicyKey.cpp
     ${CYNARA_SRC}/common/types/PolicyKeyHelpers.cpp
+    ${CYNARA_SRC}/common/types/PolicyResult.cpp
     ${CYNARA_SRC}/common/types/PolicyType.cpp
     ${CYNARA_SRC}/storage/BucketDeserializer.cpp
     ${CYNARA_SRC}/storage/InMemoryStorageBackend.cpp