package bluej.stride.generic;

import java.util.function.Function;

public class DefaultFrameFactory<T extends Frame> implements FrameFactory<T>{    
   private final Class<T> cls;
   
   private final Function<InteractionManager, T> create;

   
   
| You typically use this in a static getFactory() method as follows: | | Public static FrameFactory<BlankFrame> getFactory() | {} * return new DefaultFrameFactory<>(BlankFrame.class, BlankFrame::new); | } | public DefaultFrameFactory(Class<T> cls, Function<InteractionManager, T> create) { this.cls = cls; this.create = create; } @Override public T createBlock(InteractionManager editor) { return create.apply(editor); } @Override public Class getBlockClass() { return cls; } }

.   DefaultFrameFactory
.   createBlock
.   getBlockClass




34 neLoCode + 4 LoComm