Added next= param to login and logout urls that are also parameterized in the propert...
[pithos-web-client] / src / gr / grnet / pithos / web / client / Configuration.java
1 /*
2  * Copyright 2011-2012 GRNET S.A. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or
5  * without modification, are permitted provided that the following
6  * conditions are met:
7  *
8  *   1. Redistributions of source code must retain the above
9  *      copyright notice, this list of conditions and the following
10  *      disclaimer.
11  *
12  *   2. Redistributions in binary form must reproduce the above
13  *      copyright notice, this list of conditions and the following
14  *      disclaimer in the documentation and/or other materials
15  *      provided with the distribution.
16  *
17  * THIS SOFTWARE IS PROVIDED BY GRNET S.A. ``AS IS'' AND ANY EXPRESS
18  * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
19  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
20  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL GRNET S.A OR
21  * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
24  * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
25  * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
26  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
27  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28  * POSSIBILITY OF SUCH DAMAGE.
29  *
30  * The views and conclusions contained in the software and
31  * documentation are those of the authors and should not be
32  * interpreted as representing official policies, either expressed
33  * or implied, of GRNET S.A.
34  */
35 package gr.grnet.pithos.web.client;
36
37 import com.google.gwt.i18n.client.Constants;
38
39
40 /**
41  * This interface contains bindings for the compile-time configurable
42  * entities of the application.
43  *
44  */
45 public interface Configuration extends Constants {
46         /**
47          * @return the login URL
48          */
49         @DefaultStringValue("/im/login?next=/ui")
50         String loginUrl();
51
52         /**
53          * @return the authentication cookie name
54          */
55         @DefaultStringValue("_pithos2_a")
56         String authCookie();
57
58         /**
59          * @return the separator string between username and token in the
60          * authentication cookie
61          */
62         @DefaultStringValue("|")
63         String cookieSeparator();
64
65         /**
66          * @return the relative path of the API root URL
67          */
68         @DefaultStringValue("/v1/")
69         String apiPath();
70
71         /**
72          * @return the version string
73          */
74         @DefaultStringValue("")
75         String version();
76
77         @DefaultStringValue("X-Auth-Token")
78         String authTokenCookie();
79         
80         @DefaultStringValue("_shibsession_")
81         String shibSessionCookiePrefix();
82         
83         @DefaultStringValue("/im/logout?next=/ui")
84         String logoutUrl();
85 }