1 /******************************************************************
3 * Copyright 2017 Samsung Electronics All Rights Reserved.
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
11 * http://www.apache.org/licenses/LICENSE-2.0
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.
19 ******************************************************************/
24 * @brief This file provides exception handling for Notification Service.
27 #ifndef _NS_EXCEPTION_H_
28 #define _NS_EXCEPTION_H_
38 * @brief This is the base exception of all type of exception thrown from Notification service module.
40 class NSException : public std::exception
44 * Constructor of NSException.
46 * @param message - String describing the error messsage.
48 NSException(const std::string &message) : m_message(message) {}
51 * API to get error message describing exception reason.
53 * @return Null terminated string.
55 virtual const char *what() const noexcept
57 return m_message.c_str();
60 virtual ~NSException() throw() {}
63 std::string m_message;
67 #endif /* _NS_EXCEPTION_H_ */