public class ConfigurationUtility
extends java.lang.Object
ConfigurationUtility
is a utility class containing methods for construction and
initializing various types of DeviceConfiguration
. This is used in two contexts:
constructing entirely new XML configurations in the configuration UI, and during reading
of an existing XML configuration, where it's used to reconstitute fully flushed out
configurations, since we only *store* the parts of a configuration which are actually
populated.Modifier and Type | Field and Description |
---|---|
protected java.util.Set<java.lang.String> |
existingNames |
static int |
firstNamedDeviceNumber |
static java.lang.String |
TAG |
Constructor and Description |
---|
ConfigurationUtility() |
Modifier and Type | Method and Description |
---|---|
protected static java.util.List<DeviceConfiguration> |
buildEmptyDevices(int initialPort,
int size,
ConfigurationType type) |
protected LynxModuleConfiguration |
buildEmptyLynxModule(java.lang.String name,
int moduleAddress,
boolean isParent,
boolean isEnabled) |
static java.util.List<DeviceConfiguration> |
buildEmptyMotors(int initialPort,
int size) |
static java.util.List<DeviceConfiguration> |
buildEmptyServos(int initialPort,
int size) |
ControllerConfiguration |
buildNewControllerConfiguration(SerialNumber serialNumber,
DeviceManager.UsbDeviceType deviceType,
Supplier<LynxModuleMetaList> lynxModuleSupplier) |
DeviceInterfaceModuleConfiguration |
buildNewDeviceInterfaceModule(SerialNumber serialNumber) |
protected LynxUsbDeviceConfiguration |
buildNewEmbeddedLynxUsbDevice(DeviceManager deviceManager)
The distinguishing feature of the 'embedded' Lynx USB device is that it is labelled as
'system synthetic', in that we make it up, making sure it's there independent of whether
it's been configured in the hardware map or not.
|
LegacyModuleControllerConfiguration |
buildNewLegacyModule(SerialNumber serialNumber) |
LynxModuleConfiguration |
buildNewLynxModule(int moduleAddress,
boolean isParent,
boolean isEnabled,
boolean isEmbeddedControlHubModule) |
LynxUsbDeviceConfiguration |
buildNewLynxUsbDevice(SerialNumber serialNumber,
LynxModuleMetaList metas) |
LynxUsbDeviceConfiguration |
buildNewLynxUsbDevice(SerialNumber serialNumber,
Supplier<LynxModuleMetaList> lynxModuleMetaListSupplier) |
MotorControllerConfiguration |
buildNewModernMotorController(SerialNumber serialNumber) |
ServoControllerConfiguration |
buildNewModernServoController(SerialNumber serialNumber) |
WebcamConfiguration |
buildNewWebcam(SerialNumber serialNumber) |
protected java.lang.String |
createUniqueName(ConfigurationType configurationType,
int resId) |
protected java.lang.String |
createUniqueName(ConfigurationType configurationType,
int resId,
int preferredParam) |
protected java.lang.String |
createUniqueName(ConfigurationType configurationType,
int firstChoiceId,
int formatId,
int preferredParam) |
protected java.lang.String |
createUniqueName(ConfigurationType configurationType,
java.lang.String format,
int preferredParam) |
java.util.Set<java.lang.String> |
getExistingNames(ConfigurationType configurationType)
Historical policy is that all names are in a single flat name space.
|
protected void |
noteExistingName(ConfigurationType configurationType,
java.lang.String name) |
void |
resetNameUniquifiers() |
public static final java.lang.String TAG
public static final int firstNamedDeviceNumber
protected java.util.Set<java.lang.String> existingNames
public void resetNameUniquifiers()
public java.util.Set<java.lang.String> getExistingNames(ConfigurationType configurationType)
protected void noteExistingName(ConfigurationType configurationType, java.lang.String name)
protected java.lang.String createUniqueName(ConfigurationType configurationType, int resId)
protected java.lang.String createUniqueName(ConfigurationType configurationType, int resId, int preferredParam)
protected java.lang.String createUniqueName(ConfigurationType configurationType, java.lang.String format, int preferredParam)
protected java.lang.String createUniqueName(ConfigurationType configurationType, int firstChoiceId, int formatId, int preferredParam)
public ControllerConfiguration buildNewControllerConfiguration(SerialNumber serialNumber, DeviceManager.UsbDeviceType deviceType, Supplier<LynxModuleMetaList> lynxModuleSupplier)
public MotorControllerConfiguration buildNewModernMotorController(SerialNumber serialNumber)
public ServoControllerConfiguration buildNewModernServoController(SerialNumber serialNumber)
public DeviceInterfaceModuleConfiguration buildNewDeviceInterfaceModule(SerialNumber serialNumber)
public LegacyModuleControllerConfiguration buildNewLegacyModule(SerialNumber serialNumber)
public WebcamConfiguration buildNewWebcam(SerialNumber serialNumber)
public LynxUsbDeviceConfiguration buildNewLynxUsbDevice(SerialNumber serialNumber, Supplier<LynxModuleMetaList> lynxModuleMetaListSupplier)
public LynxUsbDeviceConfiguration buildNewLynxUsbDevice(SerialNumber serialNumber, LynxModuleMetaList metas)
public LynxModuleConfiguration buildNewLynxModule(int moduleAddress, boolean isParent, boolean isEnabled, boolean isEmbeddedControlHubModule)
protected LynxUsbDeviceConfiguration buildNewEmbeddedLynxUsbDevice(DeviceManager deviceManager)
protected static java.util.List<DeviceConfiguration> buildEmptyDevices(int initialPort, int size, ConfigurationType type)
public static java.util.List<DeviceConfiguration> buildEmptyMotors(int initialPort, int size)
public static java.util.List<DeviceConfiguration> buildEmptyServos(int initialPort, int size)
protected LynxModuleConfiguration buildEmptyLynxModule(java.lang.String name, int moduleAddress, boolean isParent, boolean isEnabled)