com.blueworld.lassopro
Class LassoTagModule

java.lang.Object
  |
  +--com.blueworld.lassopro.LassoTagModule
All Implemented Interfaces:
LassoJavaModule

public abstract class LassoTagModule
extends java.lang.Object
implements LassoJavaModule

Base class for any tag module. Most tag modules output data onto the web page, though some tags may perform other actions based on the parameters passed to them.

Every LassoTagModule must implement registerLassoModule method, and one or more methods with the same signature as TAG_METHOD_PROTOTYPE.

Lasso calls registerLassoModule once at startup to give this module a chance to register its tags. LassoTagModule must then call registerTagModule as many times as there are tags implemented by this module.


Field Summary
static int FLAG_ASYNC
          Async tags run asynchronously in their own thread.
static int FLAG_CONTAINER
          Container tags have opening and closing.
static int FLAG_INITIALIZER
          Type initializer tags can have their own members.
static int FLAG_LOOPING
          Looping tags keep track of the loop count
static int FLAG_SKIP_SECURITY_CHECK
          CAUTION!
static int FLAG_SUBSTITUTION
          Regular substitution tag.
 
Fields inherited from interface com.blueworld.lassopro.LassoJavaModule
ERR_NOERR
 
Constructor Summary
protected LassoTagModule()
           
 
Method Summary
protected  void registerTagModule(java.lang.String moduleName, java.lang.String tagName, java.lang.String methodName, int flags, java.lang.String description)
          Use this method to register substitution tags implemented by your module.
 int TAG_METHOD_PROTOTYPE(LassoCall lasso, int action)
          A prototype for all tag methods registered by registerTagModule.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.blueworld.lassopro.LassoJavaModule
registerLassoModule
 

Field Detail

FLAG_INITIALIZER

public static final int FLAG_INITIALIZER
Type initializer tags can have their own members.

See Also:
Constant Field Values

FLAG_SUBSTITUTION

public static final int FLAG_SUBSTITUTION
Regular substitution tag.

See Also:
Constant Field Values

FLAG_ASYNC

public static final int FLAG_ASYNC
Async tags run asynchronously in their own thread.

See Also:
Constant Field Values

FLAG_CONTAINER

public static final int FLAG_CONTAINER
Container tags have opening and closing. This flag will cause Lasso Professional to raise an error if the closing [/xxx] tag can't be found.

See Also:
Constant Field Values

FLAG_SKIP_SECURITY_CHECK

public static final int FLAG_SKIP_SECURITY_CHECK
CAUTION! Specifying this flag will effectively bypass any security checks performed by Lasso Service at the run time. Use at your own risk!

See Also:
Constant Field Values

FLAG_LOOPING

public static final int FLAG_LOOPING
Looping tags keep track of the loop count

See Also:
Constant Field Values
Constructor Detail

LassoTagModule

protected LassoTagModule()
Method Detail

registerTagModule

protected void registerTagModule(java.lang.String moduleName,
                                 java.lang.String tagName,
                                 java.lang.String methodName,
                                 int flags,
                                 java.lang.String description)
Use this method to register substitution tags implemented by your module. You should call registerTagModule as many times as there are tags implemented in your module.

Parameters:
moduleName - name of the module as returned by [Lasso_TagModuleName] LDML tag
tagName - name of the custom LDML tag implemented by this module
methodName - Lasso will call this method every time it finds tagName tag in a xxx.lasso format file
flags - one or more logically or'ed FLAG constants
description - optional tag info, such as brief description of this tag usage

TAG_METHOD_PROTOTYPE

public int TAG_METHOD_PROTOTYPE(LassoCall lasso,
                                int action)
A prototype for all tag methods registered by registerTagModule. Since methods are being registered by name, they must exactly match the values passed in a tagName parameter of registerTagModule call.

Parameters:
action - reserved for future use;