1
0
Fork 0
mirror of https://github.com/vanitasvitae/Smack.git synced 2024-12-22 18:48:00 +01:00

Initial check-in

git-svn-id: http://svn.igniterealtime.org/svn/repos/smack/trunk@2228 b35dd754-fafc-0310-a699-88a17e54d16e
This commit is contained in:
Gaston Dombiak 2004-02-16 17:19:30 +00:00 committed by gdombiak
parent f6935ccb5e
commit 7efeb9793d
6 changed files with 566 additions and 0 deletions

137
sample/web/addContact.jsp Normal file
View file

@ -0,0 +1,137 @@
<%--
- $$RCSfile$$
- $$Revision$$
- $$Date$$
-
- Copyright (C) 2002-2003 Jive Software. All rights reserved.
-
- The Jive Software License (based on Apache Software License, Version 1.1)
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in
- the documentation and/or other materials provided with the
- distribution.
-
- 3. The end-user documentation included with the redistribution,
- if any, must include the following acknowledgment:
- "This product includes software developed by
- Jive Software (http://www.jivesoftware.com)."
- Alternately, this acknowledgment may appear in the software itself,
- if and wherever such third-party acknowledgments normally appear.
-
- 4. The names "Smack" and "Jive Software" must not be used to
- endorse or promote products derived from this software without
- prior written permission. For written permission, please
- contact webmaster@jivesoftware.com.
-
- 5. Products derived from this software may not be called "Smack",
- nor may "Smack" appear in their name, without prior written
- permission of Jive Software.
-
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL JIVE SOFTWARE OR
- ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
--%>
<%@ page import="java.util.*,
org.jivesoftware.smack.*,
org.jivesoftware.smack.packet.*,
org.jivesoftware.smack.util.*"%>
<%@ include file="global.jsp" %>
<%
// If we don't have a valid connection then proceed to login
XMPPConnection conn = (XMPPConnection) session.getAttribute("connection");
if (conn == null || !conn.isConnected()) {
response.sendRedirect("login.jsp");
return;
}
Roster roster = conn.getRoster();
// Get parameters
String user = getParameter(request, "user");
String nickname = getParameter(request, "nickname");
String group1 = getParameter(request, "group1");
String group2 = getParameter(request, "group2");
if (user != null) {
roster.createEntry(user, nickname, new String[] {group1, group2});
response.sendRedirect("viewRoster.jsp");
return;
}
%>
<html>
<head>
<title>Add Contact</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="css/general.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="100%" border="0">
<tr>
<td><span id="bigBlack">Add contact to roster</span></td>
<td width="24"><a href="viewRoster.jsp"><img src="images/address_book.png" alt="View roster" border="0"></a></td>
</tr>
<tr>
<td colspan="2">&nbsp;</td>
</tr>
<tr>
<td colspan="2"><table width="100%" border="0">
<tr>
<td width="20%">&nbsp;</td>
<td width="60%"> <table cellSpacing=0 borderColorDark=#E0E0E0 cellPadding=0 width=100% align=center borderColorLight=#000000 border=1>
<tr bgcolor="#AAAAAA">
<td class=text id=bigWhite height=16 align="center"> <b>Contact
Information</b> </td>
</tr>
<tr>
<td align="center"> <table width="100%" border="0">
<form method="post" action="addContact.jsp">
<tr>
<td class=text id=black height=16>Username:</td>
<td><input type="text" name="user"> &nbsp;<span class=text id=black height=16>(e.g.
johndoe@jabber.org)</span></td>
</tr>
<tr>
<td class=text id=black height=16>Nickname:</td>
<td><input type="text" name="nickname"></td>
</tr>
<tr>
<td class=text id=black height=16>Group 1:</td>
<td><input type="text" name="group1" value="<%= (group1!=null)?group1:"" %>"></td>
</tr>
<tr>
<td class=text id=black height=16>Group 2:</td>
<td><input type="text" name="group2"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td colspan=2 align="center"> <input type="submit" value="Add Contact"></td>
</tr>
</form>
</table></td>
</tr>
</table></td>
<td width="20%">&nbsp;</td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>

60
sample/web/chat.jsp Normal file
View file

@ -0,0 +1,60 @@
<%--
- $$RCSfile$$
- $$Revision$$
- $$Date$$
-
- Copyright (C) 2002-2003 Jive Software. All rights reserved.
-
- The Jive Software License (based on Apache Software License, Version 1.1)
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in
- the documentation and/or other materials provided with the
- distribution.
-
- 3. The end-user documentation included with the redistribution,
- if any, must include the following acknowledgment:
- "This product includes software developed by
- Jive Software (http://www.jivesoftware.com)."
- Alternately, this acknowledgment may appear in the software itself,
- if and wherever such third-party acknowledgments normally appear.
-
- 4. The names "Smack" and "Jive Software" must not be used to
- endorse or promote products derived from this software without
- prior written permission. For written permission, please
- contact webmaster@jivesoftware.com.
-
- 5. Products derived from this software may not be called "Smack",
- nor may "Smack" appear in their name, without prior written
- permission of Jive Software.
-
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL JIVE SOFTWARE OR
- ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
--%>
<html>
<head>
<title>Chat with contact</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="css/general.css" rel="stylesheet" type="text/css">
</head>
<body>
Not implemented yet! <a href="viewRoster.jsp"><img src="images/address_book.png" alt="View roster" border="0"></a>
</body>
</html>

66
sample/web/global.jsp Normal file
View file

@ -0,0 +1,66 @@
<%--
- $$RCSfile$$
- $$Revision$$
- $$Date$$
-
- Copyright (C) 2002-2003 Jive Software. All rights reserved.
-
- The Jive Software License (based on Apache Software License, Version 1.1)
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in
- the documentation and/or other materials provided with the
- distribution.
-
- 3. The end-user documentation included with the redistribution,
- if any, must include the following acknowledgment:
- "This product includes software developed by
- Jive Software (http://www.jivesoftware.com)."
- Alternately, this acknowledgment may appear in the software itself,
- if and wherever such third-party acknowledgments normally appear.
-
- 4. The names "Smack" and "Jive Software" must not be used to
- endorse or promote products derived from this software without
- prior written permission. For written permission, please
- contact webmaster@jivesoftware.com.
-
- 5. Products derived from this software may not be called "Smack",
- nor may "Smack" appear in their name, without prior written
- permission of Jive Software.
-
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL JIVE SOFTWARE OR
- ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
--%>
<%!
public static String getParameter(HttpServletRequest request, String name)
{
String temp = request.getParameter(name);
if (temp != null) {
if (temp.equals("")) {
return null;
}
else {
return temp;
}
}
else {
return null;
}
}
%>

53
sample/web/index.jsp Normal file
View file

@ -0,0 +1,53 @@
<%--
- $$RCSfile$$
- $$Revision$$
- $$Date$$
-
- Copyright (C) 2002-2003 Jive Software. All rights reserved.
-
- The Jive Software License (based on Apache Software License, Version 1.1)
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in
- the documentation and/or other materials provided with the
- distribution.
-
- 3. The end-user documentation included with the redistribution,
- if any, must include the following acknowledgment:
- "This product includes software developed by
- Jive Software (http://www.jivesoftware.com)."
- Alternately, this acknowledgment may appear in the software itself,
- if and wherever such third-party acknowledgments normally appear.
-
- 4. The names "Smack" and "Jive Software" must not be used to
- endorse or promote products derived from this software without
- prior written permission. For written permission, please
- contact webmaster@jivesoftware.com.
-
- 5. Products derived from this software may not be called "Smack",
- nor may "Smack" appear in their name, without prior written
- permission of Jive Software.
-
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL JIVE SOFTWARE OR
- ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
--%>
<% response.sendRedirect("login.jsp");
return;
%>

190
sample/web/login.jsp Normal file
View file

@ -0,0 +1,190 @@
<%--
- $$RCSfile$$
- $$Revision$$
- $$Date$$
-
- Copyright (C) 2002-2003 Jive Software. All rights reserved.
-
- The Jive Software License (based on Apache Software License, Version 1.1)
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in
- the documentation and/or other materials provided with the
- distribution.
-
- 3. The end-user documentation included with the redistribution,
- if any, must include the following acknowledgment:
- "This product includes software developed by
- Jive Software (http://www.jivesoftware.com)."
- Alternately, this acknowledgment may appear in the software itself,
- if and wherever such third-party acknowledgments normally appear.
-
- 4. The names "Smack" and "Jive Software" must not be used to
- endorse or promote products derived from this software without
- prior written permission. For written permission, please
- contact webmaster@jivesoftware.com.
-
- 5. Products derived from this software may not be called "Smack",
- nor may "Smack" appear in their name, without prior written
- permission of Jive Software.
-
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL JIVE SOFTWARE OR
- ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
--%>
<%@ page import="org.jivesoftware.smack.*"%>
<%@ include file="global.jsp" %>
<%
// If we already got a connection then proceed to view the roster
XMPPConnection conn = (XMPPConnection) session.getAttribute("connection");
if (conn != null && conn.isConnected()) {
response.sendRedirect("viewRoster.jsp");
return;
}
// Get parameters
String host = getParameter(request, "host");
String port = getParameter(request, "port");
String ssl = getParameter(request, "ssl");
String debug = getParameter(request, "debug");
String username = getParameter(request, "username");
String password = getParameter(request, "password");
String resource = getParameter(request, "resource");
String error = getParameter(request, "error");
// Try to connect to the server
if (error == null && host != null && port != null) {
XMPPConnection.DEBUG_ENABLED = "Yes".equals(debug);
try {
if ("No".equals(ssl)) {
conn = new XMPPConnection(host, Integer.parseInt(port));
}
else {
conn = new SSLXMPPConnection(host, Integer.parseInt(port));
}
// Add listener for messages (offline messages will be listen here)
// Set the roster subscription mode to use
// Login to the server
conn.login(username, password, resource);
session.setAttribute("connection", conn);
}
catch (Exception e) {
error = e.getMessage();
// Replace any char : because otherwise the URL will get corrupted
error = error.replace(':', '-');
response.sendRedirect("login.jsp?host="+host+"&port="+port+"&ssl="+ssl+"&error="+error);
return;
}
// Redirect to the next page
response.sendRedirect("viewRoster.jsp");
return;
}
%>
<html>
<head>
<title>Login</title>
<link href="css/general.css" rel="stylesheet" type="text/css">
</head>
<body>
<table width="100%" border="0">
<tr>
<td><span id="bigBlack">Smack Demo Application</span></td>
</tr>
<tr>
<td align="center">
<% if (error != null) { %>
<p><font color="#FF0000"><%= error %></font></p>
<%} else {%>
&nbsp;
<%}%>
</td>
</tr>
<tr>
<td><table width="100%" border="0">
<tr>
<td width="20%">&nbsp;</td>
<td width="60%"> <table cellSpacing=0 borderColorDark=#E0E0E0 cellPadding=0 width=100% align=center borderColorLight=#000000 border=1>
<tr bgcolor="#AAAAAA">
<td class=text id=bigWhite height=16 align="center"> <b>Login
Information</b> </td>
</tr>
<tr>
<td> <table width=100% border=0>
<form action="login.jsp" method="post">
<tr>
<td class=text id=black height=16>Host:</td>
<td><input type="text" name="host" size="30" maxlength="50" value="<%= (host!=null)?host:"" %>"></td>
</tr>
<tr>
<td class=text id=black height=16>Port:</td>
<td><input type="text" name="port" size="5" maxlength="10" value="<%= (port!=null)?port:"5222" %>"></td>
</tr>
<tr>
<td class=text id=black height=16>Use SSL:</td>
<td><select size="1" name="ssl">
<option <%= ("No".equals(ssl))?"selected":""%>>No</option>
<option <%= ("Yes".equals(ssl))?"selected":""%>>Yes</option>
</select></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td class=text id=black height=16>Debug Connection:</td>
<td><select size="1" name="debug">
<option <%= ("Yes".equals(debug))?"selected":""%>>Yes</option>
<option <%= ("No".equals(debug))?"selected":""%>>No</option>
</select></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td class=text id=black height=16>Username:</td>
<td><input type="text" name="username" size="30" maxlength="50" value="<%= (username!=null)?username:"" %>"></td>
</tr>
<tr>
<td class=text id=black height=16>Password:</td>
<td><input type="password" name="password" size="30" maxlength="50" value="<%= (password!=null)?password:"" %>"></td>
</tr>
<tr>
<td class=text id=black height=16>Resource:</td>
<td><input type="text" name="resource" size="30" maxlength="50" value="<%= (resource!=null)?resource:"" %>"></td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr align="center">
<td colspan="2"> <input type="submit" value="Login"> </td>
</tr>
</form>
</table></td>
</tr>
</table></td>
<td width="20%">&nbsp;</td>
</tr>
</table></td>
</tr>
</table>
</body>
</html>

View file

@ -0,0 +1,60 @@
<%--
- $$RCSfile$$
- $$Revision$$
- $$Date$$
-
- Copyright (C) 2002-2003 Jive Software. All rights reserved.
-
- The Jive Software License (based on Apache Software License, Version 1.1)
- Redistribution and use in source and binary forms, with or without
- modification, are permitted provided that the following conditions
- are met:
-
- 1. Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- 2. Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in
- the documentation and/or other materials provided with the
- distribution.
-
- 3. The end-user documentation included with the redistribution,
- if any, must include the following acknowledgment:
- "This product includes software developed by
- Jive Software (http://www.jivesoftware.com)."
- Alternately, this acknowledgment may appear in the software itself,
- if and wherever such third-party acknowledgments normally appear.
-
- 4. The names "Smack" and "Jive Software" must not be used to
- endorse or promote products derived from this software without
- prior written permission. For written permission, please
- contact webmaster@jivesoftware.com.
-
- 5. Products derived from this software may not be called "Smack",
- nor may "Smack" appear in their name, without prior written
- permission of Jive Software.
-
- THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- DISCLAIMED. IN NO EVENT SHALL JIVE SOFTWARE OR
- ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- SUCH DAMAGE.
--%>
<html>
<head>
<title>Move entry</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="css/general.css" rel="stylesheet" type="text/css">
</head>
<body>
Not implemented yet! <a href="viewRoster.jsp"><img src="images/address_book.png" alt="View roster" border="0"></a>
</body>
</html>