@Override public void finish ( final FinishContext context ) { super.finish ( context ); for ( final Map.Entry<MasterServer, DeltaItem> entry : this.items.entrySet () ) { entry.getValue ().setSource ( Items.replaceDanglingReference ( this.context, entry.getKey (), entry.getValue ().getSource () ) ); } } }
@Override protected CreationRequest<?> createRequest ( final ItemCreator itemCreator ) { final DeltaItem item = OsgiFactory.eINSTANCE.createDeltaItem (); item.setSource ( this.deltaValue.getSource ().createReference () ); final CreationRequest<DeltaItem> req = itemCreator.addItem ( item ); req.addMasterListener ( new MasterListener<DeltaItem> () { @Override public void setMaster ( final DeltaItem item, final MasterContext master ) { DeltaValueGenerator.this.items.put ( master.getImplementation (), item ); } } ); return req; }