public static void collectFixedUrlInformation ( final Collection < SpecNode > specNodes , final Collection < SpecNode > nodesWithoutFixedUrls , final Set < String > existingFixedUrls ) { for ( final SpecNode specNode : specNodes ) { if ( isNullOrEmpty ( specNode . getFixedUrl ( ) ) ) { if ( specNode instanceof CommonContent ) { // Ignore common content as it can't have a fixed url continue ; } else if ( specNode instanceof Level ) { final Level level = ( Level ) specNode ; // Ignore initial content and base levels if ( level . getLevelType ( ) != LevelType . INITIAL_CONTENT && level . getLevelType ( ) != LevelType . BASE ) { nodesWithoutFixedUrls . add ( specNode ) ; } } else if ( specNode instanceof ITopicNode ) { final ITopicNode topicNode = ( ( ITopicNode ) specNode ) ; // Ignore info topics if ( topicNode . getTopicType ( ) != TopicType . INFO && topicNode . getTopicType ( ) != TopicType . INITIAL_CONTENT ) { nodesWithoutFixedUrls . add ( specNode ) ; } } else { nodesWithoutFixedUrls . add ( specNode ) ; } } else { existingFixedUrls . add ( specNode . getFixedUrl ( ) ) ; } } }
Collect the fixed url information from a list of spec nodes .