package org.eclipse.nebula.widgets.nattable.core.example.index.node

abstract class AbstractIndexNode implements IndexNode {
	
	val protected String path
	val protected String displayName
	
	new(String path, String displayName) {
		this.path = path
		this.displayName = displayName
	}
	
	override getDisplayName() {
		displayName ?: path.substring(path.lastIndexOf('/') + 1)
	}
	
}