Merge packaging information to csproj
[platform/core/csapi/push.git] / Tizen.Messaging.Push / Tizen.Messaging.Push / PushConnectionStateEventArgs.cs
1  /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  */
16
17 using System;
18
19 namespace Tizen.Messaging.Push
20 {
21     /// <summary>
22     /// An extended EventArgs class which contains the State Information.
23     /// </summary>
24     public class PushConnectionStateEventArgs : EventArgs
25     {
26         /// <summary>
27         /// Enumeration for the different states.
28         /// </summary>
29         public enum PushState
30         {
31             /// <summary>
32             /// Registered with the Server.
33             /// </summary>
34             Registered = 0,
35             /// <summary>
36             /// Unregistered.
37             /// </summary>
38             Unregistered = 1,
39             /// <summary>
40             /// To change the provisioning server IP.
41             /// </summary>
42             ProvisioningIPChanged = 2,
43             /// <summary>
44             /// Ping interval is changing.
45             /// </summary>
46             PingChanged = 3,
47             /// <summary>
48             /// Error Occured in Changing State.
49             /// </summary>
50             StateError = 4
51         }
52
53         /// <summary>
54         /// Gives the current state.
55         /// </summary>
56         /// <value>
57         /// It is the current state.</value>
58         public PushState State
59         {
60             get;
61             internal set;
62         }
63
64         /// <summary>
65         /// Gives information about the error if set.
66         /// </summary>
67         /// <value>
68         /// It is the string which contains the error string if set.</value>
69         public string Error
70         {
71             get;
72             internal set;
73         }
74
75         internal PushConnectionStateEventArgs(PushState state, string error)
76         {
77             State = state;
78             Error = error;
79         }
80     }
81 }