src/main/java/com/atlassian/uwc/hierarchies/MetaHierarchy.java [19:48]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	public HierarchyNode buildHierarchy(Collection<Page> pages) {
		log.debug("Building Hierarchy");
		log.debug("Checking Pages object is valid.");
		//check that pages is valid and non-empty
		if (pages == null) {
			String message = "Cannot build hierarchy. Pages object is null.";
			log.warn(message);
			return null;
		}
		if (pages.isEmpty()) {
			String message = "Cannot build hierarchy. Pages object is empty.";
			log.warn(message);
			return null;
		}
		log.debug("Pages object is valid.");
		init();

		//instantiate the root object
		HierarchyNode root = new HierarchyNode();
		
		log.info("Building Hierarchy.");
		for (Page page : pages) {
			if (page == null) {
				log.debug("page is null!"); 
				continue;
			}
			buildRelationships(page, root);
		}
		return root;
	}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



src/main/java/com/atlassian/uwc/hierarchies/Many2OneHierarchy.java [22:51]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
	public HierarchyNode buildHierarchy(Collection<Page> pages) {
		log.debug("Building Hierarchy");
		log.debug("Checking Pages object is valid.");
		//check that pages is valid and non-empty
		if (pages == null) {
			String message = "Cannot build hierarchy. Pages object is null.";
			log.warn(message);
			return null;
		}
		if (pages.isEmpty()) {
			String message = "Cannot build hierarchy. Pages object is empty.";
			log.warn(message);
			return null;
		}
		log.debug("Pages object is valid.");
		init();

		//instantiate the root object
		HierarchyNode root = new HierarchyNode();

		log.info("Building Hierarchy.");
		for (Page page : pages) {
			if (page == null) {
				log.debug("page is null!");
				continue;
			}
			buildRelationships(page, root);
		}
		return root;
	}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



