我正在使用 Apache Wicket 和...
我有一个java类:任务。有活动和已完成的任务。
我有一个用于活动任务的可排序数据视图:
final DataView<LongRunningTask> dataViewActive = new DataView<LongRunningTask>("sorting", dp) { private static final long serialVersionUID = 1L; @Override protected void populateItem(final Item<LongRunningTask> item) { LongRunningTask task = item.getModelObject(); if(task.getRemainingTime() <= 0) { finishedTasks.add(item); } item.add(new Label("taskId", String.valueOf(task.getTask().getId()))); item.add(new Label("startedBy", task.getTask().getUser())); item.add(new Label("characteristics", String.valueOf(task.getTask().getType() + " : " + task.getTask().getNoOfMessages()) + " : " + task.getTask().getTemplateFile())); Label clock = new Label("timer", String.valueOf(task.getRemainingTime())); item.add(clock); clock.setOutputMarkupId(true); item.add(new ActionPanel("actions", item.getModel())); } };
现在我想为 FINISHED 任务创建一个数据视图。如果任务已完成(Task.finished = true),则应将任务从活动数据视图中删除并添加到已完成的数据视图中。
final DataView<LongRunningTask> dataViewFinished = new DataView<LongRunningTask>("sorting", dp) { private static final long serialVersionUID = 1L; @Override protected void populateItem(final Item<LongRunningTask> item) { LongRunningTask task = item.getModelObject(); if(task.getRemainingTime() <= 0) { finishedTasks.add(item); } item.add(new Label("taskId", String.valueOf(task.getTask().getId()))); item.add(new Label("startedBy", task.getTask().getUser())); item.add(new Label("characteristics", String.valueOf(task.getTask().getType() + " : " + task.getTask().getNoOfMessages()) + " : " + task.getTask().getTemplateFile())); Label clock = new Label("timer","finished"); item.add(clock); clock.setOutputMarkupId(true); item.add(new ActionPanel("actions", item.getModel())); } };
我怎样才能做到这一点?我可以创建第二个数据视图,但存在 UI 问题和冲突。什么是最好的方法?
问候