- java.lang.Object
-
- org.snmp4j.SNMP4JSettings
-
public final class SNMP4JSettings extends java.lang.ObjectTheSNMP4JSettingsclass implements a central configuration class of the SNMP4J framework. As a rule of thumb, changes to the default configuration should be made before any other classes of the SNMP4J API are instantiated or referenced by the application code.- Since:
- 1.5
- Version:
- 2.2.4
- Author:
- Frank Fock
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSNMP4JSettings.ReportSecurityLevelStrategySpecifies the how the security level of retry requests after a REPORT PDU is set.static classSNMP4JSettings.Snmp4jStatistics
-
Field Summary
Fields Modifier and Type Field Description static intAGENTPP_ENTERPRISE_IDThe enterprise ID of AGENT++ which is the root OID also for SNMP4J.
-
Constructor Summary
Constructors Constructor Description SNMP4JSettings()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static intgetEnterpriseID()Gets the enterprise OID used for creating SNMP engine IDs and other enterprise specific identifiers.static intgetMaxEngineIdCacheSize()Gets the maximum number of engine IDs to be hold in the cache of theMPv3.static OIDTextFormatgetOIDTextFormat()Gets the OID text format for textual representation of OIDs.static SNMP4JSettings.ReportSecurityLevelStrategygetReportSecurityLevelStrategy()static SNMP4JSettings.Snmp4jStatisticsgetSnmp4jStatistics()Get the SNMP4J statistics level.static ThreadFactorygetThreadFactory()Gets the thread factory.static longgetThreadJoinTimeout()Gets the Thread join timeout used to join threads if no explicit timeout is set.static TimerFactorygetTimerFactory()Gets the timer factory.static VariableTextFormatgetVariableTextFormat()Gets the variable text format for textual representation of variable bindings.static booleanisAllowSNMPv2InV1()static booleanisCheckUsmUserPassphraseLength()static booleanisExtensibilityEnabled()Tests if the extensibility feature is enabled.static booleanisForwardRuntimeExceptions()Indicates whether runtime exceptions should be thrown on thread boundaries controlled by SNMP4J and related APIs.static booleanisNoGetBulk()static voidsetAllowSNMPv2InV1(boolean allowSNMPv2InV1)Sets the compatibility flag for Counter64 usage in SNMPv1 PDUs and the ability to decode SNMPv2 traps in SNMPv1 version PDUs.static voidsetCheckUsmUserPassphraseLength(boolean checkUsmUserPassphraseLength)static voidsetEnterpriseID(int enterpriseID)Sets the enterprise OID used for creating SNMP engine IDs and other enterprise specific identifiers.static voidsetExtensibilityEnabled(boolean enable)Enables (or disables) the extensibility feature of SNMP4J.static voidsetForwardRuntimeExceptions(boolean forwardExceptions)Enables or disables runtime exception forwarding.static voidsetMaxEngineIdCacheSize(int maxEngineIdCacheSize)Sets the maximum number of engine IDs that can be cached by theMPv3.static voidsetNoGetBulk(boolean noGetBulk)static voidsetOIDTextFormat(OIDTextFormat newOidTextFormat)Sets the OID text format to be used by SNMP4J.static voidsetReportSecurityLevelStrategy(SNMP4JSettings.ReportSecurityLevelStrategy reportSecurityLevelStrategy)static voidsetSnmp4jStatistics(SNMP4JSettings.Snmp4jStatistics snmp4jStatistics)Sets the SNMP4J statistics level.static voidsetThreadFactory(ThreadFactory newThreadFactory)Sets the thread factory for creating new threads of execution.static voidsetThreadJoinTimeout(long millis)Sets the Thread join timeout used to join threads if no explicit timeout is set.static voidsetTimerFactory(TimerFactory newTimerFactory)Sets the timer factory for creating new timer instances.static voidsetVariableTextFormat(VariableTextFormat newVariableTextFormat)Sets the variable text format to be used by SNMP4J.
-
-
-
Field Detail
-
AGENTPP_ENTERPRISE_ID
public static final int AGENTPP_ENTERPRISE_ID
The enterprise ID of AGENT++ which is the root OID also for SNMP4J.- See Also:
- Constant Field Values
-
-
Method Detail
-
setExtensibilityEnabled
public static void setExtensibilityEnabled(boolean enable)
Enables (or disables) the extensibility feature of SNMP4J. When enabled, SNMP4J checks certain properties files that describe which transport mappings, address types, SMI syntaxes, security protocols, etc. should be supported by SNMP4J.By default, the extensibility feature is disabled which provides a faster startup and since no system properties are read, it ensures that SNMP4J can be used also in secure environments like applets.
- Parameters:
enable- iftrueactivates extensibility or iffalsedisables it. In the latter case, SNMP4J's default configuration will be used with all available features.- Since:
- 1.2.2
-
isExtensibilityEnabled
public static boolean isExtensibilityEnabled()
Tests if the extensibility feature is enabled.- Returns:
- if
truethe extensibility is enabled otherwise it is disabled. In the latter case, SNMP4J's default configuration will be used with all available features. - Since:
- 1.2.2
-
setForwardRuntimeExceptions
public static void setForwardRuntimeExceptions(boolean forwardExceptions)
Enables or disables runtime exception forwarding.- Parameters:
forwardExceptions-trueruntime exceptions are thrown on thread boundaries controlled by SNMP4J and related APIs. Default isfalse.- Since:
- 1.8.1
- See Also:
forwardRuntimeExceptions
-
isForwardRuntimeExceptions
public static boolean isForwardRuntimeExceptions()
Indicates whether runtime exceptions should be thrown on thread boundaries controlled by SNMP4J and related APIs.- Returns:
trueruntime exceptions are thrown on thread boundaries controlled by SNMP4J and related APIs. Default isfalse.- Since:
- 1.8.1
-
getThreadFactory
public static ThreadFactory getThreadFactory()
Gets the thread factory.- Returns:
- a ThreadFactory.
- Since:
- 1.9
-
setThreadFactory
public static void setThreadFactory(ThreadFactory newThreadFactory)
Sets the thread factory for creating new threads of execution.- Parameters:
newThreadFactory- a ThreadFactory (must not benull).- Since:
- 1.9
-
getTimerFactory
public static TimerFactory getTimerFactory()
Gets the timer factory.- Returns:
- a TimerFactory.
- Since:
- 1.9
-
setTimerFactory
public static void setTimerFactory(TimerFactory newTimerFactory)
Sets the timer factory for creating new timer instances.- Parameters:
newTimerFactory- a TimerFactory (must not benull).- Since:
- 1.9
-
getOIDTextFormat
public static OIDTextFormat getOIDTextFormat()
Gets the OID text format for textual representation of OIDs.- Returns:
- an
OIDTextFormatinstance. - Since:
- 1.10
-
setOIDTextFormat
public static void setOIDTextFormat(OIDTextFormat newOidTextFormat)
Sets the OID text format to be used by SNMP4J.- Parameters:
newOidTextFormat- the newOIDTextFormat(must not benull).- Since:
- 1.10
-
getVariableTextFormat
public static VariableTextFormat getVariableTextFormat()
Gets the variable text format for textual representation of variable bindings.- Returns:
- an
VariableTextFormatinstance. - Since:
- 1.10
-
setVariableTextFormat
public static void setVariableTextFormat(VariableTextFormat newVariableTextFormat)
Sets the variable text format to be used by SNMP4J.- Parameters:
newVariableTextFormat- the newVariableTextFormat(must not benull).- Since:
- 1.10
-
getThreadJoinTimeout
public static long getThreadJoinTimeout()
Gets the Thread join timeout used to join threads if no explicit timeout is set.- Returns:
- the timeout millis.
- Since:
- 1.10.2
-
setThreadJoinTimeout
public static void setThreadJoinTimeout(long millis)
Sets the Thread join timeout used to join threads if no explicit timeout is set.- Parameters:
millis- the maximum time in milli-seconds to wait for a Thread to join if no explicit timeout has been set.- Since:
- 1.10.2
-
isAllowSNMPv2InV1
public static boolean isAllowSNMPv2InV1()
-
setAllowSNMPv2InV1
public static void setAllowSNMPv2InV1(boolean allowSNMPv2InV1)
Sets the compatibility flag for Counter64 usage in SNMPv1 PDUs and the ability to decode SNMPv2 traps in SNMPv1 version PDUs. The default isfalse. Note: By setting this totrueyou disable SNMP standard conformity.- Parameters:
allowSNMPv2InV1- if set totrue, SNMP4J will allow Counter64 objects in SNMPv1 PDUs although the SNMPv1 standard does not allow this. There are several buggy implementations which send such v1 PDUs.- Since:
- 2.2
-
getReportSecurityLevelStrategy
public static SNMP4JSettings.ReportSecurityLevelStrategy getReportSecurityLevelStrategy()
-
setReportSecurityLevelStrategy
public static void setReportSecurityLevelStrategy(SNMP4JSettings.ReportSecurityLevelStrategy reportSecurityLevelStrategy)
-
isNoGetBulk
public static boolean isNoGetBulk()
-
setNoGetBulk
public static void setNoGetBulk(boolean noGetBulk)
-
getEnterpriseID
public static int getEnterpriseID()
Gets the enterprise OID used for creating SNMP engine IDs and other enterprise specific identifiers.- Returns:
- an enterprise ID. For example 4976 as enterprise ID (IANA number) for AGENT++ (SNMP4J). This value should be changed for other enterprises (i.e., companies or organizations).
-
setEnterpriseID
public static void setEnterpriseID(int enterpriseID)
Sets the enterprise OID used for creating SNMP engine IDs and other enterprise specific identifiers.- Parameters:
enterpriseID- the new enterprise ID.
-
getMaxEngineIdCacheSize
public static int getMaxEngineIdCacheSize()
Gets the maximum number of engine IDs to be hold in the cache of theMPv3. A upper limit is necessary to avoid DoS attacks with unconfirmed SNMPv3 PDUs.- Returns:
- the maximum number, by default 50.000 (~2MB of cached data).
- Since:
- 2.3.4
-
setMaxEngineIdCacheSize
public static void setMaxEngineIdCacheSize(int maxEngineIdCacheSize)
Sets the maximum number of engine IDs that can be cached by theMPv3.- Parameters:
maxEngineIdCacheSize- the maximum number of engine IDs in the cache, by default 50.000 (~2MB of cached data).- Since:
- 2.3.4
-
getSnmp4jStatistics
public static SNMP4JSettings.Snmp4jStatistics getSnmp4jStatistics()
Get the SNMP4J statistics level.- Returns:
- the Snmp4jStatistics enum value.
- Since:
- 2.4.2
-
setSnmp4jStatistics
public static void setSnmp4jStatistics(SNMP4JSettings.Snmp4jStatistics snmp4jStatistics)
Sets the SNMP4J statistics level.- Parameters:
snmp4jStatistics- the level of statistics to be collected by SNMP4J and provided throughCounterEvents.- Since:
- 2.4.2
-
isCheckUsmUserPassphraseLength
public static boolean isCheckUsmUserPassphraseLength()
-
setCheckUsmUserPassphraseLength
public static void setCheckUsmUserPassphraseLength(boolean checkUsmUserPassphraseLength)
-
-