2 * Copyright (c) 2017 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the License);
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an AS IS BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 namespace Tizen.Applications.NotificationEventListener
20 using System.Runtime.CompilerServices;
22 internal static class NotificationEventListenerErrorFactory
24 private const string LogTag = "Tizen.Applications.NotificationEventListener";
26 internal static Exception GetException(
27 Interop.NotificationEventListener.ErrorCode err,
29 [CallerMemberName] string memberName = "",
30 [CallerFilePath] string filePath = "",
31 [CallerLineNumber] int lineNumber = 0)
33 Log.Error(LogTag, memberName + " : " + lineNumber);
36 case Interop.NotificationEventListener.ErrorCode.InvalidParameter:
37 Log.Error(LogTag, msg);
38 return new ArgumentException(err + " error occurred.");
39 case Interop.NotificationEventListener.ErrorCode.PermissionDenied:
40 Log.Error(LogTag, msg);
41 return new UnauthorizedAccessException(err + "Permission denied.");
43 Log.Error(LogTag, msg);
44 return new InvalidOperationException(err + " error occurred.");