Package helma.scripting.rhino.extensions

# Class MailObject

java.lang.Object
org.mozilla.javascript.ScriptableObject
helma.scripting.rhino.extensions.MailObject

All Implemented Interfaces:
  `Serializable`, `org.mozilla.javascript.ConstProperties`, `org.mozilla.javascript.debug.DebuggableObject`, `org.mozilla.javascript.Scriptable`, `org.mozilla.javascript.SymbolScriptable`

public class MailObject extends org.mozilla.javascript.ScriptableObject implements Serializable
A JavaScript wrapper around a JavaMail message class to send mail via SMTP from Helma

See Also:
  - Serialized Form

## Nested Class Summary

## Nested classes/interfaces inherited from class org.mozilla.javascript.ScriptableObject

`org.mozilla.javascript.ScriptableObject.KeyComparator`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`BCC`
`static final int`
`CC`
`static final int`
`FROM`
`static final int`
`MIMEPART`
`static final int`
`OK`
`static final int`
`REPLYTO`
`static final int`
`SEND`
`static final int`
`SUBJECT`
`static final int`
`TEXT`
`static final int`
`TO`

### Fields inherited from class org.mozilla.javascript.ScriptableObject

`CONST, DONTENUM, EMPTY, PERMANENT, READONLY, UNINITIALIZED_CONST`

### Fields inherited from interface org.mozilla.javascript.Scriptable

`NOT_FOUND`

## Method Summary

Modifier and Type
Method
Description
`void`
`addBCC(String addstr, Object name)`
Add a BCC address for this message
`void`
`addCC(String addstr, Object name)`
ADd a CC address for this message
`void`
`addPart(Object obj, Object filename)`
Add a MIME message part to a multipart message
`void`
`addText(String text)`
Add some text to a plain text message.
`void`
`addTo(String addstr, Object name)`
Add a To address for this message
`String`
`getClassName()`
Overrides abstract method in ScriptableObject
`String`
`getMultipartType()`
Returns the MIME multipart message subtype.
`protected javax.mail.Session`
`getSession()`
Get the cached JavaMail session.
`int`
`getStatus()`
Returns the error status of this message.
`static void`
`init(org.mozilla.javascript.Scriptable scope, Properties props)`
Initialize Mail extension for the given scope, called by RhinoCore.
`static MailObject`
`mailObjCtor(org.mozilla.javascript.Context cx, Object[] args, org.mozilla.javascript.Function ctorObj, boolean inNewExpr)`
JavaScript constructor, called by the Rhino runtime.
`void`
`send()`
Send the message.
`void`
`setFrom(String addstr, Object name)`
Set the From address for this message
`void`
`setMultipartType(String subtype)`
Sets the MIME multipart message subtype.
`void`
`setReplyTo(String addstr)`
Set the Reply-to address for this message
`protected void`
`setStatus(int status)`
Set the error status of this message
`void`
`setSubject(Object subject)`
Set the subject of this message
`void`
`setText(String text)`
Set the text to a plain text message, clearing any previous text.
`void`
`setTo(String addstr, Object name)`
Set the To address for this message

### Methods inherited from class org.mozilla.javascript.ScriptableObject

`applyDescriptorToAttributeBitset, associateValue, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkPropertyChangeForSlot, checkPropertyDefinition, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, delete, delete, deleteProperty, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, ensureScriptableObjectButNotSymbol, ensureSymbolScriptable, equivalentValues, get, get, get, get, getAllIds, getArrayPrototype, getAssociatedValue, getAttributes, getAttributes, getAttributes, getAttributes, getAttributes, getClassPrototype, getDefaultValue, getDefaultValue, getExternalArrayData, getExternalArrayLength, getFunctionPrototype, getGeneratorFunctionPrototype, getGetterOrSetter, getGetterOrSetter, getIds, getObjectPrototype, getOwnPropertyDescriptor, getParentScope, getProperty, getProperty, getProperty, getPropertyIds, getPrototype, getSuperProperty, getSuperProperty, getSuperProperty, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, getTypeOf, has, has, has, hasInstance, hasProperty, hasProperty, hasProperty, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGetterOrSetter, isSealed, isTrue, preventExtensions, put, put, put, putConst, putConstProperty, putOwnProperty, putOwnProperty, putOwnProperty, putProperty, putProperty, putProperty, putSuperProperty, putSuperProperty, putSuperProperty, querySlot, redefineProperty, sameValue, sealObject, setAttributes, setAttributes, setAttributes, setAttributes, setAttributes, setCommonDescriptorProperties, setExternalArrayData, setGetterOrSetter, setParentScope, setPrototype, size`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### OK

public static final int OK

See Also:
  - Constant Field Values

### SUBJECT

public static final int SUBJECT

See Also:
  - Constant Field Values

### TEXT

public static final int TEXT

See Also:
  - Constant Field Values

### MIMEPART

public static final int MIMEPART

See Also:
  - Constant Field Values

### TO

public static final int TO

See Also:
  - Constant Field Values

### CC

public static final int CC

See Also:
  - Constant Field Values

### BCC

public static final int BCC

See Also:
  - Constant Field Values

### FROM

public static final int FROM

See Also:
  - Constant Field Values

### REPLYTO

public static final int REPLYTO

See Also:
  - Constant Field Values

### SEND

public static final int SEND

See Also:
  - Constant Field Values

## Method Details

### getClassName

public String getClassName()
Overrides abstract method in ScriptableObject

Specified by:
  `getClassName` in interface `org.mozilla.javascript.Scriptable`
Specified by:
  `getClassName` in class `org.mozilla.javascript.ScriptableObject`

### getSession

protected javax.mail.Session getSession()
Get the cached JavaMail session. This is similar to Session.getDefaultSession(), except that we check if the properties have changed.

### mailObjCtor

public static MailObject mailObjCtor(org.mozilla.javascript.Context cx, Object[] args, org.mozilla.javascript.Function ctorObj, boolean inNewExpr)
JavaScript constructor, called by the Rhino runtime.

### init

public static void init(org.mozilla.javascript.Scriptable scope, Properties props)
Initialize Mail extension for the given scope, called by RhinoCore.

### setStatus

protected void setStatus(int status)
Set the error status of this message

Parameters:
  `status` - the new error status

### getStatus

public int getStatus()
Returns the error status of this message.

Returns:
  the error status of this message

### addText

public void addText(String text)
Add some text to a plain text message.

### setText

public void setText(String text)
Set the text to a plain text message, clearing any previous text.

### getMultipartType

public String getMultipartType()
Returns the MIME multipart message subtype. The default value is "mixed" for messages of type multipart/mixed. A common value is "alternative" for the multipart/alternative MIME type.

Returns:
  the MIME subtype such as "mixed" or "alternative"

### setMultipartType

public void setMultipartType(String subtype)
Sets the MIME multipart message subtype. The default value is "mixed" for messages of type multipart/mixed. A common value is "alternative" for the multipart/alternative MIME type.

Parameters:
  `subtype` - the MIME subtype such as "mixed" or "alternative".

### addPart

public void addPart(Object obj, Object filename)
Add a MIME message part to a multipart message

Parameters:
  `obj` - the MIME part object. Supported classes are java.lang.String, java.io.File and helma.util.MimePart.
  `filename` - optional file name for the mime part

### setSubject

public void setSubject(Object subject)
Set the subject of this message

Parameters:
  `subject` - the message subject

### setReplyTo

public void setReplyTo(String addstr)
Set the Reply-to address for this message

Parameters:
  `addstr` - the email address to set in the Reply-to header

### setFrom

public void setFrom(String addstr, Object name)
Set the From address for this message

Parameters:
  `addstr` - the email address to set in the From header
  `name` - the name this address belongs to

### setTo

public void setTo(String addstr, Object name)
Set the To address for this message

Parameters:
  `addstr` - the email address to set in the To header
  `name` - the name this address belongs to

### addTo

public void addTo(String addstr, Object name)
Add a To address for this message

Parameters:
  `addstr` - the email address to set in the To header
  `name` - the name this address belongs to

### addCC

public void addCC(String addstr, Object name)
ADd a CC address for this message

Parameters:
  `addstr` - the email address to set in the CC header
  `name` - the name this address belongs to

### addBCC

public void addBCC(String addstr, Object name)
Add a BCC address for this message

Parameters:
  `addstr` - the email address to set in the BCC header
  `name` - the name this address belongs to

### send

public void send()
Send the message.