* @param manNode the manageable node, not null
* @param sourceNode the source node, not null
* @param versionCorrection the version/correction time for resolving the constituent positions, not null
*/
protected void convertNode(final ManageablePortfolioNode manNode, final SimplePortfolioNode sourceNode, final VersionCorrection versionCorrection) {
final PositionSearchRequest positionSearch = new PositionSearchRequest();
final Map<ObjectId, Position> positionCache;
final int positionCount = populatePositionSearchRequest(positionSearch, manNode);
if (positionCount > 0) {
positionCache = Maps.newHashMapWithExpectedSize(positionCount);
positionSearch.setVersionCorrection(versionCorrection);
Collection<Position> positions = positions(positionSearch);
if (positions != null) {
for (Position position : positions) {
positionCache.put(position.getUniqueId().getObjectId(), position);
}