import java.util.function.Consumer;
-public interface DataPart {
- void setInput(Object data);
+public interface DataPart<INPUT, TYPE> {
+ void setInput(INPUT data);
- Object getInput();
+ INPUT getInput();
+
+ void onSelected(Consumer<TYPE> onSelected);
+
+ Consumer<TYPE> getOnSelected();
+
+ void onAction(Consumer<TYPE> onAction);
+
+ Consumer<TYPE> getOnAction();
void refresh();
- void onSelected(Consumer<Object> onSelected);
+ void addView(DataView<INPUT, TYPE> view);
+
+ void removeView(DataView<INPUT, TYPE> view);
+
+// void select(TYPE data);
+//
+// TYPE getSelected();
- void onAction(Consumer<Object> onAction);
}