@Override public Class<? extends IpV6RoutingData> getTargetClass(IpV6RoutingHeaderType number) { if (number == null) { throw new NullPointerException("number must not be null."); } Instantiater instantiater = instantiaters.get(number); return instantiater != null ? instantiater.getTargetClass() : getTargetClass(); }
@Override public IpV6RoutingData newInstance( byte[] rawData, int offset, int length, IpV6RoutingHeaderType number) { if (rawData == null || number == null) { StringBuilder sb = new StringBuilder(40); sb.append("rawData: ").append(rawData).append(" number: ").append(number); throw new NullPointerException(sb.toString()); } try { Instantiater instantiater = instantiaters.get(number); if (instantiater != null) { return instantiater.newInstance(rawData, offset, length); } } catch (IllegalRawDataException e) { return IllegalIpV6RoutingData.newInstance(rawData, offset, length); } return newInstance(rawData, offset, length); }
public ItemTypeConfigurationCollection(Instantiater instantiater) throws InitializationException { Collection<AbstractItemTypeConfiguration> configurations = instantiater.instantiateOrdered(ItemTypeConfiguration.class); itemTypeConfigurations.addAll(configurations); }