Java源码示例:org.snmp4j.smi.Null
示例1
private static boolean checkWalkFinished(OID targetOID, PDU pdu, VariableBinding vb) {
boolean finished = false;
if (pdu.getErrorStatus() != 0) {
finished = true;
} else if (vb.getOid() == null) {
finished = true;
} else if (vb.getOid().size() < targetOID.size()) {
finished = true;
} else if (targetOID.leftMostCompare(targetOID.size(), vb.getOid()) != 0) {
finished = true;
} else if (Null.isExceptionSyntax(vb.getVariable().getSyntax())) {
finished = true;
} else if (vb.getOid().compareTo(targetOID) <= 0) {
finished = true;
}
return finished;
}
示例2
private static boolean checkWalkFinished(OID targetOID, PDU pdu, VariableBinding vb) {
boolean finished = false;
if (pdu.getErrorStatus() != 0) {
finished = true;
} else if (vb.getOid() == null) {
finished = true;
} else if (vb.getOid().size() < targetOID.size()) {
finished = true;
} else if (targetOID.leftMostCompare(targetOID.size(), vb.getOid()) != 0) {
finished = true;
} else if (Null.isExceptionSyntax(vb.getVariable().getSyntax())) {
finished = true;
} else if (vb.getOid().compareTo(targetOID) <= 0) {
finished = true;
}
return finished;
}
示例3
@Override
public void get(final SubRequest request) {
final OID oid = request.getVariableBinding().getOid();
final Variable variable = variableBindings.get(oid);
if (variable == null) {
request.getVariableBinding().setVariable(Null.noSuchInstance);
} else {
request.getVariableBinding().setVariable((Variable) variable.clone());
}
request.completed();
}
示例4
@Override
public boolean next(final SubRequest request) {
final MOScope scope = request.getQuery().getScope();
final SortedMap<OID, Variable> tail = variableBindings.tailMap(scope.getLowerBound());
OID first = tail.firstKey();
if (scope.getLowerBound().equals(first) && !scope.isLowerIncluded()) {
if (tail.size() > 1) {
final Iterator<OID> it = tail.keySet().iterator();
it.next();
first = it.next();
} else {
return false;
}
}
if (first != null) {
final Variable variable = variableBindings.get(first);
// TODO remove try / catch if no more errors occur
// TODO add configuration check with types though (e.g. UInt32 == UInt32 Modifier?)
try {
if (variable == null) {
request.getVariableBinding().setVariable(Null.noSuchInstance);
} else {
request.getVariableBinding().setVariable((Variable) variable.clone());
}
request.getVariableBinding().setOid(first);
} catch (IllegalArgumentException e) {
if (variable != null) {
log.error("error occurred on variable class " + variable.getClass().getName() + " with first OID " + first.toDottedString(), e);
}
}
request.completed();
return true;
}
return false;
}