Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance. Project price only 1 $
You can buy this project and download/modify it how often you want.
/*_############################################################################
_##
_## SNMP4J-Agent - AgentppSimulationMib.java
_##
_## Copyright (C) 2005-2009 Frank Fock (SNMP4J.org)
_##
_## Licensed under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
_##
_## Unless required by applicable law or agreed to in writing, software
_## distributed under the License is distributed on an "AS IS" BASIS,
_## WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
_## See the License for the specific language governing permissions and
_## limitations under the License.
_##
_##########################################################################*/
package org.snmp4j.agent.mo.ext;
//--AgentGen BEGIN=_BEGIN
//--AgentGen END
import org.snmp4j.smi.*;
import org.snmp4j.mp.SnmpConstants;
import org.snmp4j.agent.*;
import org.snmp4j.agent.mo.*;
import org.snmp4j.agent.mo.snmp.*;
import org.snmp4j.agent.request.*;
import org.snmp4j.log.LogFactory;
import org.snmp4j.log.LogAdapter;
//--AgentGen BEGIN=_IMPORT
//--AgentGen END
public class AgentppSimulationMib
//--AgentGen BEGIN=_EXTENDS
//--AgentGen END
implements MOGroup
//--AgentGen BEGIN=_IMPLEMENTS
//--AgentGen END
{
private static final LogAdapter LOGGER =
LogFactory.getLogger(AgentppSimulationMib.class);
//--AgentGen BEGIN=_STATIC
//--AgentGen END
// Factory
private static MOFactory moFactory = DefaultMOFactory.getInstance();
// Constants
public static final OID oidAgentppSimMode =
new OID(new int[] { 1,3,6,1,4,1,4976,2,1,1,0 });
public static final OID oidAgentppSimDeleteRow =
new OID(new int[] { 1,3,6,1,4,1,4976,2,1,2,0 });
public static final OID oidAgentppSimDeleteTableContents =
new OID(new int[] { 1,3,6,1,4,1,4976,2,1,3,0 });
// Enumerations
public static final class AgentppSimModeEnum {
public static final int oper = 1;
public static final int config = 2;
}
// TextualConventions
// Scalars
private MOScalar agentppSimMode;
private MOScalar agentppSimDeleteRow;
private MOScalar agentppSimDeleteTableContents;
// Tables
//--AgentGen BEGIN=_MEMBERS
private MOServer moServer;
private OctetString myContext;
//--AgentGen END
public AgentppSimulationMib() {
agentppSimMode =
new AgentppSimMode(oidAgentppSimMode, MOAccessImpl.ACCESS_READ_WRITE);
agentppSimDeleteRow =
new AgentppSimDeleteRow(oidAgentppSimDeleteRow,
MOAccessImpl.ACCESS_READ_WRITE);
agentppSimDeleteTableContents =
new AgentppSimDeleteTableContents(oidAgentppSimDeleteTableContents,
MOAccessImpl.ACCESS_READ_WRITE);
//--AgentGen BEGIN=_DEFAULTCONSTRUCTOR
//--AgentGen END
}
//--AgentGen BEGIN=_CONSTRUCTORS
//--AgentGen END
public void registerMOs(MOServer server, OctetString context)
throws DuplicateRegistrationException
{
// Scalar Objects
server.register(this.agentppSimMode, context);
server.register(this.agentppSimDeleteRow, context);
server.register(this.agentppSimDeleteTableContents, context);
//--AgentGen BEGIN=_registerMOs
moServer = server;
myContext = context;
//--AgentGen END
}
public void unregisterMOs(MOServer server, OctetString context) {
// Scalar Objects
server.unregister(this.agentppSimMode, context);
server.unregister(this.agentppSimDeleteRow, context);
server.unregister(this.agentppSimDeleteTableContents, context);
//--AgentGen BEGIN=_unregisterMOs
moServer = null;
myContext = null;
//--AgentGen END
}
// Notifications
// Scalars
public class AgentppSimMode extends EnumeratedScalar {
AgentppSimMode(OID oid, MOAccess access) {
super(oid, access, new Integer32(),
new int[] { AgentppSimModeEnum.oper,
AgentppSimModeEnum.config });
//--AgentGen BEGIN=agentppSimMode
setValue(new Integer32(AgentppSimModeEnum.oper));
setVolatile(true);
//--AgentGen END
}
public int setValue(Variable newValue) {
//--AgentGen BEGIN=agentppSimMode::setValue
SimMOFactory.setSimulationModeEnabled(((Integer32)newValue).getValue() ==
AgentppSimModeEnum.config);
//--AgentGen END
return super.setValue(newValue);
}
//--AgentGen BEGIN=agentppSimMode::_METHODS
//--AgentGen END
}
public class AgentppSimDeleteRow extends MOScalar {
AgentppSimDeleteRow(OID oid, MOAccess access) {
super(oid, access, new OID());
//--AgentGen BEGIN=agentppSimDeleteRow
super.setValue(SnmpConstants.zeroDotZero);
setVolatile(true);
//--AgentGen END
}
public int isValueOK(SubRequest request) {
Variable newValue =
request.getVariableBinding().getVariable();
int valueOK = super.isValueOK(request);
if (valueOK != SnmpConstants.SNMP_ERROR_SUCCESS) {
return valueOK;
}
//--AgentGen BEGIN=agentppSimDeleteRow::isValueOK
if (AgentppSimulationMib.this.moServer == null) {
return SnmpConstants.SNMP_ERROR_RESOURCE_UNAVAILABLE;
}
OID oid = (OID)newValue;
ManagedObject mo = getManagedObject(oid);
if (!(mo instanceof MOTable)) {
return SnmpConstants.SNMP_ERROR_WRONG_VALUE;
}
MOTable table = (MOTable)mo;
OID index = new OID(oid.getValue(), table.getOID().size(),
oid.size()-table.getOID().size());
MOTableRow row = table.getModel().getRow(index);
if (row == null) {
return SnmpConstants.SNMP_ERROR_WRONG_VALUE;
}
//--AgentGen END
return valueOK;
}
public int setValue(Variable newValue) {
//--AgentGen BEGIN=agentppSimDeleteRow::setValue
if (AgentppSimulationMib.this.moServer == null) {
return SnmpConstants.SNMP_ERROR_COMMIT_FAILED;
}
OID oid = (OID)newValue;
ManagedObject mo = getManagedObject(oid);
if (!(mo instanceof MOTable)) {
return SnmpConstants.SNMP_ERROR_COMMIT_FAILED;
}
MOTable table = (MOTable)mo;
OID index = new OID(oid.getValue(), table.getOID().size(),
oid.size()-table.getOID().size());
MOTableRow row = table.removeRow(index);
if (row == null) {
return SnmpConstants.SNMP_ERROR_COMMIT_FAILED;
}
//--AgentGen END
return super.setValue(newValue);
}
//--AgentGen BEGIN=agentppSimDeleteRow::_METHODS
//--AgentGen END
}
public class AgentppSimDeleteTableContents extends MOScalar {
AgentppSimDeleteTableContents(OID oid, MOAccess access) {
super(oid, access, new OID());
//--AgentGen BEGIN=agentppSimDeleteTableContents
setVolatile(true);
//--AgentGen END
}
public int isValueOK(SubRequest request) {
Variable newValue =
request.getVariableBinding().getVariable();
int valueOK = super.isValueOK(request);
if (valueOK != SnmpConstants.SNMP_ERROR_SUCCESS) {
return valueOK;
}
//--AgentGen BEGIN=agentppSimDeleteTableContents::isValueOK
if (AgentppSimulationMib.this.moServer == null) {
return SnmpConstants.SNMP_ERROR_RESOURCE_UNAVAILABLE;
}
OID oid = (OID)newValue;
oid.append(0);
ManagedObject mo = getManagedObject(oid);
if ((!(mo instanceof MOTable)) ||
(!(((MOTable)mo).getModel() instanceof MOMutableTableModel))) {
return SnmpConstants.SNMP_ERROR_WRONG_VALUE;
}
//--AgentGen END
return valueOK;
}
public int setValue(Variable newValue) {
//--AgentGen BEGIN=agentppSimDeleteTableContents::setValue
if (AgentppSimulationMib.this.moServer == null) {
return SnmpConstants.SNMP_ERROR_COMMIT_FAILED;
}
OID oid = (OID)newValue;
oid.append(0);
ManagedObject mo = getManagedObject(oid);
if ((!(mo instanceof MOTable)) &&
(!(((MOTable)mo).getModel() instanceof MOMutableTableModel))) {
return SnmpConstants.SNMP_ERROR_COMMIT_FAILED;
}
MOTable table = (MOTable)mo;
((MOMutableTableModel)table.getModel()).clear();
//--AgentGen END
return super.setValue(newValue);
}
//--AgentGen BEGIN=agentppSimDeleteTableContents::_METHODS
//--AgentGen END
}
// Value Validators
// Rows and Factories
//--AgentGen BEGIN=_METHODS
private synchronized ManagedObject getManagedObject(OID oid) {
MOQuery query = new DefaultMOQuery(new DefaultMOContextScope(myContext,
oid, true, oid, true), true);
ManagedObject mo = AgentppSimulationMib.this.moServer.lookup(query);
return mo;
}
//--AgentGen END
//--AgentGen BEGIN=_CLASSES
//--AgentGen END
//--AgentGen BEGIN=_END
//--AgentGen END
}