@Test public void testGetBinaryForestsRecurWordOneTime() { fail("Not yet implemented"); }
public StringBuilder getBinaryForestsRecurWordOneTime(StringBuilder outputWordNode, String inputString , int charPosition, int inputStringLength, Map<Long, FMHMMNode>[] forestsRoots, int forestDepth ,int charPositionNext) { if (StableData.INT_THREE== forestDepth){ return outputWordNode; } FMHMMNode fFHMMNode= getFMHMMNode(forestsRoots,inputString,charPosition); if (null== fFHMMNode) { return outputWordNode; } Map<String, Integer> outputList= fFHMMNode.getNext(); if (null== outputList|| charPositionNext>= inputStringLength) { return outputWordNode; } char positionOfi= inputString.charAt(charPositionNext); if (outputList.containsKey(String.valueOf(positionOfi))) { outputWordNode= getBinaryForestsRecurWordOneTime(outputWordNode.append(positionOfi), inputString, charPositionNext , inputStringLength, forestsRoots, ++forestDepth, ++charPositionNext); } return outputWordNode; }
NEROControllerOneTimeImp implements NEROControllerOneTime { public StringBuilder getBinaryForestsRecurWordOneTime(StringBuilder outputWordNode, String inputString , int charPosition, int inputStringLength, Map<Long, FMHMMNode>[] forestsRoots, int forestDepth ,int charPositionNext) { if (StableData.INT_THREE== forestDepth){ return outputWordNode; } FMHMMNode fFHMMNode= getFMHMMNode(forestsRoots,inputString,charPosition); if (null== fFHMMNode) { return outputWordNode; } Map<String, Integer> outputList= fFHMMNode.getNext(); if (null== outputList|| charPositionNext>= inputStringLength) { return outputWordNode; } char positionOfi= inputString.charAt(charPositionNext); if (outputList.containsKey(String.valueOf(positionOfi))) { outputWordNode= getBinaryForestsRecurWordOneTime(outputWordNode.append(positionOfi), inputString, charPositionNext , inputStringLength, forestsRoots, ++forestDepth, ++charPositionNext); } return outputWordNode; } }
NEROControllerOneTimeImp implements NEROControllerOneTime { public StringBuilder getBinaryForestsRecurWordOneTime(StringBuilder outputWordNode, String inputString , int charPosition, int inputStringLength, Map<Long, FMHMMNode>[] forestsRoots, int forestDepth ,int charPositionNext) { if (StableData.INT_THREE== forestDepth){ return outputWordNode; } FMHMMNode fFHMMNode= getFMHMMNode(forestsRoots,inputString,charPosition); if (null== fFHMMNode) { return outputWordNode; } Map<String, Integer> outputList= fFHMMNode.getNext(); if (null== outputList|| charPositionNext>= inputStringLength) { return outputWordNode; } char positionOfi= inputString.charAt(charPositionNext); if (outputList.containsKey(String.valueOf(positionOfi))) { outputWordNode= getBinaryForestsRecurWordOneTime(outputWordNode.append(positionOfi), inputString, charPositionNext , inputStringLength, forestsRoots, ++forestDepth, ++charPositionNext); } return outputWordNode; }  }
NEROControllerOneTimeImp implements NEROControllerOneTime { public StringBuilder getBinaryForestsRecurWordOneTime(StringBuilder outputWordNode, String inputString , int charPosition, int inputStringLength, Map<Long, FMHMMNode>[] forestsRoots, int forestDepth ,int charPositionNext) { if (StableData.INT_THREE== forestDepth){ return outputWordNode; } FMHMMNode fFHMMNode= getFMHMMNode(forestsRoots,inputString,charPosition); if (null== fFHMMNode) { return outputWordNode; } Map<String, Integer> outputList= fFHMMNode.getNext(); if (null== outputList|| charPositionNext>= inputStringLength) { return outputWordNode; } char positionOfi= inputString.charAt(charPositionNext); if (outputList.containsKey(String.valueOf(positionOfi))) { outputWordNode= getBinaryForestsRecurWordOneTime(outputWordNode.append(positionOfi), inputString, charPositionNext , inputStringLength, forestsRoots, ++forestDepth, ++charPositionNext); } return outputWordNode; }  StringBuilder getBinaryForestRecurWordOneTime(StringBuilder outputWordNode, String inputString
			, int charPosition, int inputStringLength, Map<Long, FMHMMNode> forestRoots, int forestDepth
			, int charPositionNext); StringBuilder getBinaryForestsRecurWordOneTime(StringBuilder outputWordNode, String inputString
			, int charPosition, int inputStringLength, Map<Long, FMHMMNode>[] forestsRoots, int forestDepth
			,int charPositionNext); StringBuilder getQuickForestRecurWord(StringBuilder outputWordNode, String inputString, int charPosition
			, int inputStringLength, Map<String, String> posCntoCn, int forestDepth, int charPositionNext ); }
NEROControllerOneTimeImp implements NEROControllerOneTime { public StringBuilder getBinaryForestsRecurWordOneTime(StringBuilder outputWordNode, String inputString , int charPosition, int inputStringLength, Map<Long, FMHMMNode>[] forestsRoots, int forestDepth ,int charPositionNext) { if (StableData.INT_THREE== forestDepth){ return outputWordNode; } FMHMMNode fFHMMNode= getFMHMMNode(forestsRoots,inputString,charPosition); if (null== fFHMMNode) { return outputWordNode; } Map<String, Integer> outputList= fFHMMNode.getNext(); if (null== outputList|| charPositionNext>= inputStringLength) { return outputWordNode; } char positionOfi= inputString.charAt(charPositionNext); if (outputList.containsKey(String.valueOf(positionOfi))) { outputWordNode= getBinaryForestsRecurWordOneTime(outputWordNode.append(positionOfi), inputString, charPositionNext , inputStringLength, forestsRoots, ++forestDepth, ++charPositionNext); } return outputWordNode; }  StringBuilder getBinaryForestRecurWordOneTime(StringBuilder outputWordNode, String inputString
			, int charPosition, int inputStringLength, Map<Long, FMHMMNode> forestRoots, int forestDepth
			, int charPositionNext); StringBuilder getBinaryForestsRecurWordOneTime(StringBuilder outputWordNode, String inputString
			, int charPosition, int inputStringLength, Map<Long, FMHMMNode>[] forestsRoots, int forestDepth
			,int charPositionNext); StringBuilder getQuickForestRecurWord(StringBuilder outputWordNode, String inputString, int charPosition
			, int inputStringLength, Map<String, String> posCntoCn, int forestDepth, int charPositionNext );  }