Module org.snmp4j.agent
Package org.snmp4j.agent.mo
Class MOMutableColumn<V extends org.snmp4j.smi.Variable>
java.lang.Object
org.snmp4j.agent.mo.MOColumn<V>
org.snmp4j.agent.mo.MOMutableColumn<V>
- All Implemented Interfaces:
Comparable<MOColumn<V>>
- Direct Known Subclasses:
AutonomousType
,DateAndTime
,DisplayString
,Enumerated
,KeyChange
,RowPointer
,RowStatus
,SnmpAdminString
,SnmpTagList
,SnmpTagValue
,StorageType
The
MOMutableColumn
class represents mutable columnar SMI
objects. It represents all instances of a table's column not only a
single instance (cell).
Objects represented by MOMutableColumn
can be modified via SNMP,
thus MOColumn
supports read-only, read-write, and read-create
maximum access.
- Version:
- 1.0
- Author:
- Frank Fock
- See Also:
-
Constructor Summary
ConstructorDescriptionMOMutableColumn
(int columnID, int syntax) Creates a read-only column object with the given column and syntax.MOMutableColumn
(int columnID, int syntax, MOAccess access) Creates a column object with the given column, syntax, and maximum access.MOMutableColumn
(int columnID, int syntax, MOAccess access, V defaultValue) Creates a column object with the given column, syntax, and maximum access.MOMutableColumn
(int columnID, int syntax, MOAccess access, V defaultValue, boolean mutableInService) Creates a column object with the given column, syntax, and maximum access. -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
cleanup
(SubRequest<?> subRequest, MOTableRow row, int column) void
commit
(SubRequest<?> subRequest, MOTableRow row, MOTableRow changeSet, int column) boolean
Returnstrue
if this column must be specified in a SET request which creates a row.boolean
void
prepare
(SubRequest<?> subRequest, MOTableRow row, MOTableRow changeSet, int column) void
void
setDefaultValue
(V defaultValue) void
setMandatory
(boolean mandatory) Sets a flag that determines if this column must be specified in a SET request which creates a row.void
setMutableInService
(boolean mutableInService) toString()
void
undo
(SubRequest<?> subRequest, MOTableRow row, int column) int
Deprecated.int
Validate the new value for a mutable column based on old value and (new in v3.7.0) the instance OID.protected boolean
validateSetRequest
(SubRequest<?> subRequest, MOTableRow row, int column) Methods inherited from class org.snmp4j.agent.mo.MOColumn
compareTo, get, getAccess, getColumnID, getRestoreValue, getStoreValue, getSyntax, getTable, getValue, isVolatile, setAccess, setColumnID, setSyntax, setTable
-
Constructor Details
-
MOMutableColumn
public MOMutableColumn(int columnID, int syntax) Creates a read-only column object with the given column and syntax.- Parameters:
columnID
- the column ID which is ID the last sub-identifier of the corresponding OBJECT-TYPE definition.syntax
- the syntax of the objects in this column. SeeSMIConstants
for possible values.
-
MOMutableColumn
Creates a column object with the given column, syntax, and maximum access. SinceMOColumn
only supports read-only columns the only reasonable values foraccess
are 'not-accessible' and 'read-only'. Generally this constructor should not be called directly.- Parameters:
columnID
- the column ID which is ID the last sub-identifier of the corresponding OBJECT-TYPE definition.syntax
- the syntax of the objects in this column. SeeSMIConstants
for possible values.access
- the maximum access of the column.
-
MOMutableColumn
Creates a column object with the given column, syntax, and maximum access. SinceMOColumn
only supports read-only columns the only reasonable values foraccess
are 'not-accessible' and 'read-only'. Generally this constructor should not be called directly.- Parameters:
columnID
- the column ID which is ID the last sub-indentifer of the corresponding OBJECT-TYPE definition.syntax
- the syntax of the objects in this column. SeeSMIConstants
for possible values.access
- the maximum access of the column.defaultValue
- the default value for new rows.
-
MOMutableColumn
public MOMutableColumn(int columnID, int syntax, MOAccess access, V defaultValue, boolean mutableInService) Creates a column object with the given column, syntax, and maximum access. SinceMOColumn
only supports read-only columns the only reasonable values foraccess
are 'not-accessible' and 'read-only'. Generally this constructor should not be called directly.- Parameters:
columnID
- the column ID which is ID the last sub-indentifer of the corresponding OBJECT-TYPE definition.syntax
- the syntax of the objects in this column. SeeSMIConstants
for possible values.access
- the maximum access of the column.defaultValue
- the default value for new rows.mutableInService
- iftrue
this column accepts value changes through SNMP (viaprepare(org.snmp4j.agent.request.SubRequest, MOTableRow, MOTableRow, int)
andcommit(org.snmp4j.agent.request.SubRequest, MOTableRow, MOTableRow, int)
while the rowsRowStatus
object is in stateRowStatus.active
. Otherwise, such an operation will result in aPDU.inconsistentValue
error.
-
-
Method Details
-
addMOValueValidationListener
-
removeMOValueValidationListener
-
validate
Validate the new value for a mutable column based on old value and (new in v3.7.0) the instance OID.- Parameters:
newValue
- the new value to be set.oldValue
- the existing value.instanceOID
- the instance OID of the table cell to be modified.- Returns:
SnmpConstants.SNMP_ERROR_SUCCESS
if the change is OK, otherwise a SNMP error status.- Since:
- 3.7.0
-
validate
Deprecated.Usevalidate(Variable, Variable, OID)
instead.Validate the new value for a mutable column based on old value and (new in v3.7.0) the instance OID.- Parameters:
newValue
- the new value to be set.oldValue
- the existing value.- Returns:
SnmpConstants.SNMP_ERROR_SUCCESS
if the change is OK, otherwise a SNMP error status.
-
validateSetRequest
-
prepare
-
commit
-
undo
-
cleanup
-
setDefaultValue
-
setMutableInService
public void setMutableInService(boolean mutableInService) -
getDefaultValue
-
isMutableInService
public boolean isMutableInService() -
isMandatory
public boolean isMandatory()Returnstrue
if this column must be specified in a SET request which creates a row.- Returns:
true
if this row has a maximum access of READ-CREATE and has anull
default value,false
otherwise.
-
setMandatory
public void setMandatory(boolean mandatory) Sets a flag that determines if this column must be specified in a SET request which creates a row. The default istrue
.- Parameters:
mandatory
- iftrue
and a row has a maximum access of READ-CREATE and has anull
default value, then it must be provided in order to activate the row.- Since:
- 1.3.2
-
toString
-
validate(Variable, Variable, OID)
instead.