use of ml.shifu.shifu.message.NormResultDataMessage in project shifu by ShifuML.
the class DataNormalizeWorker method handleMsg.
/*
* (non-Javadoc)
*
* @see akka.actor.UntypedActor#onReceive(java.lang.Object)
*/
@Override
public void handleMsg(Object message) {
if (message instanceof NormPartRawDataMessage) {
NormPartRawDataMessage msg = (NormPartRawDataMessage) message;
List<String> rawDataList = msg.getRawDataList();
int targetMsgCnt = msg.getTotalMsgCnt();
List<List<Double>> normalizedDataList = normalizeData(rawDataList);
nextActorRef.tell(new NormResultDataMessage(targetMsgCnt, rawDataList, normalizedDataList), this.getSelf());
} else {
unhandled(message);
}
}
use of ml.shifu.shifu.message.NormResultDataMessage in project shifu by ShifuML.
the class NormalizeDataActor method onReceive.
/*
* (non-Javadoc)
*
* @see akka.actor.UntypedActor#onReceive(java.lang.Object)
*/
@Override
public void onReceive(Object message) throws Exception {
if (message instanceof AkkaActorInputMessage) {
resultCnt = 0;
AkkaActorInputMessage msg = (AkkaActorInputMessage) message;
List<Scanner> scanners = msg.getScanners();
log.debug("Num of Scanners: " + scanners.size());
for (Scanner scanner : scanners) {
dataLoadRef.tell(new ScanNormInputDataMessage(scanners.size(), scanner), getSelf());
}
} else if (message instanceof NormResultDataMessage) {
NormResultDataMessage msg = (NormResultDataMessage) message;
int targetMsgCnt = msg.getTargetMsgCnt();
writeDataIntoFile(msg.getNormalizedDataList());
writeSelectDataIntoFile(msg.getSelectDataList());
resultCnt++;
if (resultCnt == targetMsgCnt) {
log.info("Received " + resultCnt + " messages. Finished normalizing train data.");
normDataWriter.close();
selectDataWriter.close();
getContext().system().shutdown();
}
} else if (message instanceof ExceptionMessage) {
// since some children actors meet some exception, shutdown the system
ExceptionMessage msg = (ExceptionMessage) message;
getContext().system().shutdown();
// and wrapper the exception into Return status
addExceptionIntoCondition(msg.getException());
} else {
unhandled(message);
}
}
Aggregations