]> sjero.net Git - linphone/blob - java/common/org/linphone/core/Reason.java
improve echo calibration
[linphone] / java / common / org / linphone / core / Reason.java
1 package org.linphone.core;
2
3 import java.util.Vector;
4
5 public class Reason {
6         static private Vector<Reason> values = new Vector<Reason>();
7         /**
8          * None (no failure)
9          */
10         static public Reason None = new Reason(0,"None");
11         /**
12          * No response 
13          */
14         static public Reason NoResponse = new Reason(1,"NoResponse");
15         /**
16          * Bad credentials
17          */
18         static public Reason BadCredentials = new Reason(2,"BadCredentials");
19         /**
20          * Call declined
21          */
22         static public Reason Declined = new Reason(3,"Declined");
23         /**
24          * Not found
25          */
26         static public Reason NotFound = new Reason(4,"NotFound");
27         /**
28          * Call not answered (in time).
29          */
30         static public Reason NotAnswered = new Reason(5,"NotAnswered");
31         /**
32          * Call not answered (in time).
33          */
34         static public Reason Busy = new Reason(6,"Busy");
35         
36         protected final int mValue;
37         private final String mStringValue;
38
39         
40         private Reason(int value,String stringValue) {
41                 mValue = value;
42                 values.addElement(this);
43                 mStringValue=stringValue;
44         }
45         public static Reason fromInt(int value) {
46                 for (int i=0; i<values.size();i++) {
47                         Reason state = (Reason) values.elementAt(i);
48                         if (state.mValue == value) return state;
49                 }
50                 throw new RuntimeException("Reason not found ["+value+"]");
51         }
52
53         public String toString() {
54                 return mStringValue;
55         }
56 }