assemble method
Implementation
void assemble(InfiniteScorllController<T> controller) {
// infiniteScorllController = controller;
final indicotorTrigger = this;
final headerRequest = indicotorTrigger.appendHeadTask;
final footerRequest = indicotorTrigger.appendFootTask;
final lThis = this;
if (lThis is IndicatorLoadTrigger) {
if (headerRequest != null) {
MTProcessingManager headProcessManager = MTProcessingManager(
generateTask: () {
final task = controller.trickAppendData(
appendLeading: true,
request: () {
return headerRequest(controller);
});
return task;
},
);
_headerIndicator = (lThis as IndicatorLoadTrigger).buildHeaderIndicator(headProcessManager, controller);
}
if (footerRequest != null) {
MTProcessingManager footProcessManager = MTProcessingManager(
generateTask: () {
final task = controller.trickAppendData(
appendLeading: false,
request: () {
return footerRequest(controller);
});
return task;
},
);
_footerIndicator = (lThis as IndicatorLoadTrigger).buildFooterIndicator(footProcessManager, controller);
}
} else if (this is AutoLoadTrigger) {
if (headerRequest != null) {
MTProcessingManager headProcessManager = MTProcessingManager(
generateTask: () {
final task = controller.trickAppendData(
appendLeading: true,
request: () {
return headerRequest(controller);
});
return task;
},
);
_headerIndicator = buildHeaderIndicator(headProcessManager, controller);
}
if (footerRequest != null) {
MTProcessingManager headProcessManager = MTProcessingManager(
generateTask: () {
final task = controller.trickAppendData(
appendLeading: false,
request: () {
return footerRequest(controller);
});
return task;
},
);
_footerIndicator = buildFooterIndicator(headProcessManager, controller);
}
}
}