/*
 *  Copyright 2013, 2014 Deutsche Nationalbibliothek
 *
 *  Licensed under the Apache License, Version 2.0 the "License";
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
package org.culturegraph.mf.morph;

import org.culturegraph.mf.util.xml.Location;

/**
 * Base class for {@link NamedValuePipe}s.
 *
 * @author Markus Michael Geipel
 * @author Chistoph Böhme
 *
 */
public abstract class AbstractNamedValuePipe implements NamedValuePipe {

	private NamedValueReceiver namedValueReceiver;

	private Location sourceLocation;

	@Override
	public final void setNamedValueReceiver(final NamedValueReceiver receiver) {
		namedValueReceiver = receiver;
	}

	@Override
	public final void addNamedValueSource(final NamedValueSource namedValueSource) {
		namedValueSource.setNamedValueReceiver(this);

		onNamedValueSourceAdded(namedValueSource);
	}

	@Override
	public void setSourceLocation(final Location sourceLocation) {
		this.sourceLocation = sourceLocation;
	}

	@Override
	public Location getSourceLocation() {
		return sourceLocation;
	}

	protected void onNamedValueSourceAdded(final NamedValueSource namedValueSource) {
		// Default implementation does nothing
	}

	protected final NamedValueReceiver getNamedValueReceiver() {
		return namedValueReceiver;
	}

}

@@ -1170,35 +1170,25 @@
 ValueSource 
-namedValueS
+s
 ource) %7B%0A%09%09n
@@ -1188,21 +1188,12 @@
 ) %7B%0A
+%0A
 %09%09
-namedValueS
+s
 ourc
@@ -1223,17 +1223,16 @@
 (this);%0A
-%0A
 %09%09onName
@@ -1249,33 +1249,118 @@
 ceAdded(
-namedValueSource)
+source);%0A%09%7D%0A%0A%09protected final NamedValueReceiver getNamedValueReceiver() %7B%0A%09%09return namedValueReceiver
 ;%0A%09%7D%0A%0A%09@
@@ -1376,16 +1376,22 @@
 %09public 
+final 
 void set
@@ -1501,16 +1501,22 @@
 %09public 
+final 
 Location
@@ -1607,16 +1607,20 @@
 ceAdded(
+%0A%09%09%09
 final Na
@@ -1703,101 +1703,6 @@
 %09%7D%0A%0A
-%09protected final NamedValueReceiver getNamedValueReceiver() %7B%0A%09%09return namedValueReceiver;%0A%09%7D%0A%0A
 %7D%0A

Improve code layout