@Nonnull
public DataBuilder appendBrowserBuilder(@Nonnull final Browser.Builder browserBuilder) {
Check.notNull(browserBuilder, "browserBuilder");
Check.notNegative(browserBuilder.getId(), "browserBuilder.getId()");
if (browserBuilder.getType() == null && browserBuilder.getTypeId() < 0) {
throw new IllegalStateOfArgumentException("A Type or Type-ID of argument 'browserBuilder' must be set.");
}
if (browserBuilders.containsKey(browserBuilder.getId())) {
throw new IllegalStateOfArgumentException("The browser builder '" + browserBuilder.getProducer() + " "
+ browserBuilder.getFamily() + "' is already in the map.");
}
final Browser.Builder builder = browserBuilder.copy();
browserBuilders.put(builder.getId(), builder);