Configuration Object Example

This is a simple configuration object example from the DTK examples. The example shows a Disk Collection agent configuration including a directory field and a fileNamePrefix field.

@DRStorableId("devkitexamples.DiskCollectionConfig") @DRConfigTypeInfo(version = 10f, section = "Disk Collection") public class DiskCollectionConfig extends DRAbstractConfigObject { public static final String DIRECTORY = "Directory"; public static final String FILENAME_PREFIX = "Filename Prefix"; private String _directory = ""; private String _fileNamePrefix = ""; public DiskCollectionConfig() {} @DRConfigFieldInfo(title = DIRECTORY, description = "The path to the source directory") public void setDirectory(String directory) { _directory = directory; } public String getDirectory() { return _directory; } @DRConfigFieldInfo(title = FILENAME_PREFIX, description = "The filename prefix") public void setFileNamePrefix(String fileNamePrefix) { _fileNamePrefix = fileNamePrefix; } public String getFileNamePrefix() { return _fileNamePrefix; } @Override public String validateField(String fieldName, Object fieldValue, DREnvironment env) throws DRException { if (fieldName.equalsIgnoreCase("directory")) { if (fieldValue == null || ((String) fieldValue).length() < 1) return "Directory may not be empty"; } return null; } }