Bug 163317 [Viewers] Take over SWT programming pattern to JFace Viewers
To open ColumnViewer for reusablility we should not make it final making the constructor protected forces people to subclass it and not directly creating instances from it.
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/ViewerColumn.java
private CellLabelProvider labelProvider;
	static String COLUMN_VIEWER_KEY = Policy.JFACE + ".columnViewer";
	private EditingSupport editingSupport;
	/**
	 * Create a new instance of the receiver at columnIndex.
	 * 
	 * @param columnOwner
	 * @param provider
	 */
	public ViewerColumn(Widget columnOwner, CellLabelProvider provider) {
		labelProvider = provider;
		columnOwner.setData(ViewerColumn.COLUMN_VIEWER_KEY, this);
	}
	/**
	 * Return the label provider for the receiver.
	 * 
	 * @return ViewerLabelProvider
	 */
	public CellLabelProvider getLabelProvider() {
		return labelProvider;
	}
	/**
	 * Set the label provider for the column.
	 * @param labelProvider
	 *            the new {@link CellLabelProvider}
	 */
	public void setLabelProvider(CellLabelProvider labelProvider) {
		this.labelProvider = labelProvider;