288 lines
7.6 KiB
Java
288 lines
7.6 KiB
Java
/*
|
|
* The contents of this file are subject to the Mozilla Public License Version 1.1
|
|
* (the "License"); you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at <http://www.mozilla.org/MPL/>.
|
|
*
|
|
* Software distributed under the License is distributed on an "AS IS" basis, WITHOUT
|
|
* WARRANTY OF ANY KIND, either express or implied. See the License for the specific
|
|
* language governing rights and limitations under the License.
|
|
*
|
|
* The Original Code is the Venice Web Communities System.
|
|
*
|
|
* The Initial Developer of the Original Code is Eric J. Bowersox <erbo@silcom.com>,
|
|
* for Silverwrist Design Studios. Portions created by Eric J. Bowersox are
|
|
* Copyright (C) 2001-2004 Eric J. Bowersox/Silverwrist Design Studios. All Rights Reserved.
|
|
*
|
|
* Contributor(s):
|
|
*/
|
|
package com.silverwrist.venice.ui.script;
|
|
|
|
import java.io.UnsupportedEncodingException;
|
|
import java.net.URLEncoder;
|
|
import java.util.*;
|
|
import org.w3c.dom.*;
|
|
import com.silverwrist.util.StringUtil;
|
|
import com.silverwrist.venice.core.*;
|
|
import com.silverwrist.venice.ui.VeniceUISession;
|
|
import com.silverwrist.venice.ui.helpers.*;
|
|
import com.silverwrist.venice.util.*;
|
|
|
|
public class ScriptLibrary
|
|
{
|
|
/*--------------------------------------------------------------------------------
|
|
* External operations
|
|
*--------------------------------------------------------------------------------
|
|
*/
|
|
|
|
public final Boolean booleanObject(boolean b)
|
|
{
|
|
return (b ? Boolean.TRUE : Boolean.FALSE);
|
|
|
|
} // end booleanObject
|
|
|
|
public final byte[] castByteArray(Object o)
|
|
{
|
|
if (o instanceof byte[])
|
|
return (byte[])o;
|
|
throw new ClassCastException("ScriptLibrary.castByteArray: invalid cast");
|
|
|
|
} // end castByteArray
|
|
|
|
public final ConferenceContext castConferenceContext(Object o)
|
|
{
|
|
if (o instanceof ConferenceContext)
|
|
return (ConferenceContext)o;
|
|
throw new ClassCastException("ScriptLibrary.castConferenceContext: invalid cast");
|
|
|
|
} // end castConferenceContext
|
|
|
|
public final ConferenceHotlistEntry castConferenceHotlistEntry(Object o)
|
|
{
|
|
if (o instanceof ConferenceHotlistEntry)
|
|
return (ConferenceHotlistEntry)o;
|
|
throw new ClassCastException("ScriptLibrary.castConferenceHotlistEntry: invalid cast");
|
|
|
|
} // end castConferenceHotlistEntry
|
|
|
|
public final Date castDate(Object o)
|
|
{
|
|
if (o instanceof Date)
|
|
return (Date)o;
|
|
throw new ClassCastException("ScriptLibrary.castDate: invalid cast");
|
|
|
|
} // end castDate
|
|
|
|
public final List castList(Object o)
|
|
{
|
|
if (o instanceof List)
|
|
return (List)o;
|
|
throw new ClassCastException("ScriptLibrary.castList: invalid cast");
|
|
|
|
} // end castList
|
|
|
|
public final Map castMap(Object o)
|
|
{
|
|
if (o instanceof Map)
|
|
return (Map)o;
|
|
throw new ClassCastException("ScriptLibrary.castMap: invalid cast");
|
|
|
|
} // end castMap
|
|
|
|
public final SideBoxDescriptor castSideBoxDescriptor(Object o)
|
|
{
|
|
if (o instanceof SideBoxDescriptor)
|
|
return (SideBoxDescriptor)o;
|
|
throw new ClassCastException("ScriptLibrary.castSideBoxDescriptor: invalid cast");
|
|
|
|
} // end castSideBoxDescriptor
|
|
|
|
public final TopicContext castTopicContext(Object o)
|
|
{
|
|
if (o instanceof TopicContext)
|
|
return (TopicContext)o;
|
|
throw new ClassCastException("ScriptLibrary.castTopicContext: invalid cast");
|
|
|
|
} // end castTopicContext
|
|
|
|
public final TopicMessageContext castTopicMessageContext(Object o)
|
|
{
|
|
if (o instanceof TopicMessageContext)
|
|
return (TopicMessageContext)o;
|
|
throw new ClassCastException("ScriptLibrary.castTopicMessageContext: invalid cast");
|
|
|
|
} // end castTopicMessageContext
|
|
|
|
public final UserFound castUserFound(Object o)
|
|
{
|
|
if (o instanceof UserFound)
|
|
return (UserFound)o;
|
|
throw new ClassCastException("ScriptLibrary.castUserFound: invalid cast");
|
|
|
|
} // end castUserSideBoxDescriptor
|
|
|
|
public final UserSideBoxDescriptor castUserSideBoxDescriptor(Object o)
|
|
{
|
|
if (o instanceof UserSideBoxDescriptor)
|
|
return (UserSideBoxDescriptor)o;
|
|
throw new ClassCastException("ScriptLibrary.castUserSideBoxDescriptor: invalid cast");
|
|
|
|
} // end castUserSideBoxDescriptor
|
|
|
|
public final VeniceUISession castVeniceUISession(Object o)
|
|
{
|
|
if (o instanceof VeniceUISession)
|
|
return (VeniceUISession)o;
|
|
throw new ClassCastException("ScriptLibrary.castVeniceUISession: invalid cast");
|
|
|
|
} // end castVeniceUISession
|
|
|
|
public final boolean[] createBooleanArray(int len)
|
|
{
|
|
return new boolean[len];
|
|
|
|
} // end createBooleanArray
|
|
|
|
public final int[] createIntArray(int len)
|
|
{
|
|
return new int[len];
|
|
|
|
} // end createIntArray
|
|
|
|
public final Integer createInteger(int value)
|
|
{
|
|
return new Integer(value);
|
|
|
|
} // end createInteger
|
|
|
|
public final List createList()
|
|
{
|
|
return new ArrayList();
|
|
|
|
} // end createList
|
|
|
|
public final Map createMap()
|
|
{
|
|
return new HashMap();
|
|
|
|
} // end createMap
|
|
|
|
public final void done() throws ScriptExit
|
|
{
|
|
throw new ScriptExit();
|
|
|
|
} // end done
|
|
|
|
public final boolean emptyString(String s)
|
|
{
|
|
return StringUtil.isStringEmpty(s);
|
|
|
|
} // end emptyString
|
|
|
|
public final String encodeHTML(String s)
|
|
{
|
|
return StringUtil.encodeHTML(s);
|
|
|
|
} // end encodeHTML
|
|
|
|
public final String encodeURL(String s)
|
|
{
|
|
try
|
|
{ // encode and return the string
|
|
return URLEncoder.encode(s,"UTF-8");
|
|
|
|
} // end try
|
|
catch (UnsupportedEncodingException e)
|
|
{ // shouldn't happen
|
|
return s;
|
|
|
|
} // end catch
|
|
|
|
} // end encodeURL
|
|
|
|
public final String exceptionType(Object o) throws ScriptExit
|
|
{
|
|
if (o==null)
|
|
return null;
|
|
if (o instanceof ScriptExit)
|
|
throw (ScriptExit)o; // rethrow ScriptExit exceptions
|
|
if (o instanceof Throwable)
|
|
return o.getClass().getName();
|
|
else
|
|
return null;
|
|
|
|
} // end exceptionType
|
|
|
|
public final String join(List l, String separator)
|
|
{
|
|
return StringUtil.join(l,separator);
|
|
|
|
} // end join
|
|
|
|
public final BrowserInformation queryBrowserInformation(ServiceProvider sp)
|
|
{
|
|
return (BrowserInformation)(sp.queryService(BrowserInformation.class));
|
|
|
|
} // end queryBrowserInformation
|
|
|
|
public final CookieControl queryCookieControl(ServiceProvider sp)
|
|
{
|
|
return (CookieControl)(sp.queryService(CookieControl.class));
|
|
|
|
} // end queryCookieControl
|
|
|
|
public final HTMLRendering queryHTMLRendering(ServiceProvider sp)
|
|
{
|
|
return (HTMLRendering)(sp.queryService(HTMLRendering.class));
|
|
|
|
} // end queryHTMLRendering
|
|
|
|
public final SessionControl querySessionControl(ServiceProvider sp)
|
|
{
|
|
return (SessionControl)(sp.queryService(SessionControl.class));
|
|
|
|
} // end querySessionControl
|
|
|
|
public final List splitList(String data, String delims)
|
|
{
|
|
return StringUtil.splitList(data,delims);
|
|
|
|
} // end splitList
|
|
|
|
public final double toDouble(Object o) throws NumberFormatException
|
|
{
|
|
if ( (o instanceof Byte) || (o instanceof Short) || (o instanceof Integer) || (o instanceof Long)
|
|
|| (o instanceof Float) || (o instanceof Double))
|
|
return ((Number)o).doubleValue();
|
|
else
|
|
return Double.parseDouble(o.toString());
|
|
|
|
} // end toDouble
|
|
|
|
public final int toInteger(Object o) throws NumberFormatException
|
|
{
|
|
if ((o instanceof Byte) || (o instanceof Short) || (o instanceof Integer))
|
|
return ((Number)o).intValue();
|
|
else if (o instanceof Boolean)
|
|
return ((Boolean)o).booleanValue() ? 1 : 0;
|
|
else
|
|
return Integer.parseInt(o.toString());
|
|
|
|
} // end toInteger
|
|
|
|
public final String typeOf(Object o)
|
|
{
|
|
if (o==null)
|
|
return null;
|
|
else
|
|
return o.getClass().getName();
|
|
|
|
} // end typeOf
|
|
|
|
public final boolean validVeniceID(String s)
|
|
{
|
|
return IDUtils.isValidVeniceID(s);
|
|
|
|
} // end validVeniceID
|
|
|
|
} // end class ScriptLibrary
|