1 20 21 package org.snmp4j.agent.mo.snmp; 22 23 import org.snmp4j.agent.mo.MOScalar; 24 import org.snmp4j.smi.OctetString; 25 import org.snmp4j.smi.OID; 26 import org.snmp4j.agent.MOAccess; 27 import org.snmp4j.smi.Variable; 28 import org.snmp4j.agent.request.SubRequest; 29 import java.util.GregorianCalendar ; 30 import org.snmp4j.agent.mo.snmp.tc.DateAndTimeTC; 32 33 47 public class DateAndTimeScalar extends MOScalar { 48 49 private boolean localtime; 50 51 public DateAndTimeScalar(final OID oid, 52 final MOAccess access, 53 final OctetString value) { 54 this(oid, access, value, false); 55 } 56 57 58 public DateAndTimeScalar(final OID oid, 59 final MOAccess access, 60 final OctetString value, 61 final boolean localtime) { 62 super(oid, access, value); 63 this.localtime = localtime; 64 } 65 66 public int isValueOK(SubRequest sreq) { 67 return DateAndTime.validateDateAndTime(sreq.getVariableBinding().getVariable()); 68 } 69 70 public Variable getValue() { 71 Variable value = super.getValue(); 72 if (localtime) { 73 value = DateAndTime.makeDateAndTime(new GregorianCalendar ()); 74 } 75 return value; 76 } 77 78 84 public void setCalendar(GregorianCalendar calendar) { 85 setValue(DateAndTime.makeDateAndTime(calendar)); 86 } 87 88 93 public GregorianCalendar getCalendar() { 94 return DateAndTime.makeCalendar((OctetString)getValue()); 95 } 96 97 } 98 | Popular Tags |