@Override protected <T extends Item> void itemAdded ( final T item, final CustomizationRequest customizationRequest, final List<String> originalLocalTags, final Set<MasterListener<T>> masterListeners ) { super.itemAdded ( item, customizationRequest, originalLocalTags, masterListeners ); registerMappedItem ( this.ctx, this.component, originalLocalTags, item ); if ( isArchive ( item, customizationRequest ) ) { logger.debug ( "Archive item: {}", item ); final ValueArchiveServer archive = this.ctx.getArchiveServer ( this.master.getImplementation () ); if ( archive == null ) { final Node node = Nodes.fromApp ( this.master.getImplementation () ); throw new IllegalStateException ( String.format ( "Item %s should be archived but no archive server is configured for %s on %s", item, this.master, node ) ); } Items.addArchive ( archive, item ); } }