java.lang.Object
com.aoindustries.aoserv.client.AoservObject<Integer,List>
com.aoindustries.aoserv.client.CachedObject<Integer,List>
com.aoindustries.aoserv.client.CachedObjectIntegerKey<List>
com.aoindustries.aoserv.client.email.List
- All Implemented Interfaces:
Streamable
,StreamReadable
,StreamWritable
,Row
,AoservReadable
,AoservStreamable
,AoservWritable
,Disablable
,Removable
,SingleTableObject<Integer,
List>
Any incoming email addressed to a
List
is immediately
forwarded on to all addresses contained in the list.- Author:
- AO Industries, Inc.
- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
The directory that email lists are normally contained in.static final int
The maximum length of an email list name.Fields inherited from class com.aoindustries.aoserv.client.CachedObjectIntegerKey
pkey
Fields inherited from class com.aoindustries.aoserv.client.CachedObject
table
Fields inherited from class com.aoindustries.aoserv.client.AoservObject
USE_ARRAY_OF_DOMAIN, USE_SQL_DATA, USE_SQL_DATA_WRITE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionint
addEmailAddress
(Address address) boolean
boolean
void
disable
(DisableLog dl) void
enable()
Gets the list of addresses that email will be sent to, one address per line.int
Gets the number of addresses in an address list.Lists the reasons an object may not be removed.protected Object
getColumnImpl
(int i) int
int
static PosixPath
getListPath
(String name, int osv) Gets the full path that should be used for normal email lists.getPath()
void
Initializes this object from the raw database contents.boolean
Checks if this object is disabled.static boolean
isValidRegularPath
(PosixPath path, int osv) Checks the validity of a list name.void
read
(StreamableInput in, AoservProtocol.Version protocolVersion) void
remove()
Removes this object, and all dependant objects, from the system.void
setAddressList
(String addresses) void
write
(StreamableOutput out, AoservProtocol.Version protocolVersion) Methods inherited from class com.aoindustries.aoserv.client.CachedObjectIntegerKey
equals, getKey, getPkey, hashCode, toStringImpl
Methods inherited from class com.aoindustries.aoserv.client.CachedObject
getTable, setTable
Methods inherited from class com.aoindustries.aoserv.client.AoservObject
compare, compare, compare, compare, compareIgnoreCaseConsistentWithEquals, compareTo, compareTo, compareTo, getAccountingCode, getColumn, getColumns, getColumns, getDomainLabel, getDomainLabels, getDomainName, getDto, getEmail, getGecos, getGroupId, getHashedKey, getHashedPassword, getHostname, getInetAddress, getLinuxId, getLinuxUserName, getMacAddress, getMysqlDatabaseName, getMysqlServerName, getMysqlUserName, getPort, getPostgresDatabaseName, getPostgresServerName, getPostgresUserId, getTableSchema, getTimeMillis, getTimeMillis, getUnixPath, getUserId, read, toString, write
-
Field Details
-
LIST_DIRECTORY
The directory that email lists are normally contained in.- See Also:
-
MAX_NAME_LENGTH
public static final int MAX_NAME_LENGTHThe maximum length of an email list name.- See Also:
-
-
Constructor Details
-
List
Deprecated.Only required for implementation, do not use directly.- See Also:
-
-
Method Details
-
addEmailAddress
- Throws:
IOException
SQLException
-
canDisable
public boolean canDisable()- Specified by:
canDisable
in interfaceDisablable
-
canEnable
- Specified by:
canEnable
in interfaceDisablable
- Throws:
SQLException
IOException
-
disable
- Specified by:
disable
in interfaceDisablable
- Throws:
IOException
SQLException
-
enable
- Specified by:
enable
in interfaceDisablable
- Throws:
IOException
SQLException
-
getAddressList
Gets the list of addresses that email will be sent to, one address per line. The list is obtained from a file on the server that hosts the list.- Throws:
IOException
SQLException
-
getAddressListCount
Gets the number of addresses in an address list. The number of addresses is equal to the number of non-blank lines.- Throws:
IOException
SQLException
-
getColumnImpl
- Specified by:
getColumnImpl
in classAoservObject<Integer,
List>
-
isDisabled
public boolean isDisabled()Description copied from interface:Disablable
Checks if this object is disabled. This should execute very quickly (not incur any round-trip to any database) and thus does not throw any checked exceptions.- Specified by:
isDisabled
in interfaceDisablable
-
getDisableLog
- Specified by:
getDisableLog
in interfaceDisablable
- Throws:
SQLException
IOException
-
getEmailAddresses
- Throws:
IOException
SQLException
-
getEmailListAddresses
- Throws:
IOException
SQLException
-
getLinuxServerAccount_pkey
public int getLinuxServerAccount_pkey() -
getLinuxServerAccount
- Throws:
SQLException
IOException
-
getLinuxServerGroup_pkey
public int getLinuxServerGroup_pkey() -
getLinuxServerGroup
- Throws:
SQLException
IOException
-
getListPath
Gets the full path that should be used for normal email lists.- Throws:
ValidationException
- See Also:
-
getMajordomoList
- Throws:
IOException
SQLException
-
getPath
-
getTableId
- Specified by:
getTableId
in classAoservObject<Integer,
List>
-
init
Description copied from class:AoservObject
Initializes this object from the raw database contents.- Specified by:
init
in classAoservObject<Integer,
List> - Parameters:
result
- theResultSet
containing the row to copy into this object- Throws:
SQLException
-
isValidRegularPath
Checks the validity of a list name.TODO: Self-validating type
- See Also:
-
read
- Specified by:
read
in interfaceAoservReadable
- Specified by:
read
in interfaceAoservStreamable
- Specified by:
read
in classAoservObject<Integer,
List> - Throws:
IOException
-
getCannotRemoveReasons
Description copied from interface:Removable
Lists the reasons an object may not be removed.- Specified by:
getCannotRemoveReasons
in interfaceRemovable
- Returns:
- an empty
List<CannotRemoveReason>
if this object may be removed, or a list of descriptions
-
remove
Description copied from interface:Removable
Removes this object, and all dependant objects, from the system.- Specified by:
remove
in interfaceRemovable
- Throws:
IOException
SQLException
-
setAddressList
- Throws:
IOException
SQLException
-
write
- Specified by:
write
in interfaceAoservStreamable
- Specified by:
write
in interfaceAoservWritable
- Specified by:
write
in classAoservObject<Integer,
List> - Throws:
IOException
-