protected void bindTypeReferences(BindingFactory factory, TypeReference interfaceType,
			TypeReference implementationType, TypeReference customImplementationType) {
		final IFileSystemAccess2 fileSystem = getSrc();
		final TypeReference type;
		if ((fileSystem.isFile(implementationType.getJavaPath()))
				|| (fileSystem.isFile(customImplementationType.getXtendPath()))) {
			type = customImplementationType;
		} else {
			type = implementationType;
		}
		factory.addfinalTypeToType(interfaceType, type);
	}
protected void bindTypeReferences ( BindingFactory factory , TypeReference interfaceType , TypeReference implementationType , TypeReference customImplementationType ) { final IFileSystemAccess2 fileSystem = getSrc ( ) ; final TypeReference type ; if ( ( fileSystem . isFile ( implementationType . getJavaPath ( ) ) ) || ( fileSystem . isFile ( customImplementationType . getXtendPath ( ) ) ) ) { type = customImplementationType ; } else { type = implementationType ; } factory . addfinalTypeToType ( interfaceType , type ) ; }
Binds the given references according to the standard policy.

<p>If an custom implementation is defined, it is binded to. Otherwise, the default implementation
is binded.

@param factory the binding factory to use for creating the bindings.
@param interfaceType the type to bind to an implementation type.
@param implementationType the implementation to bind to the interface type.
@param customImplementationType the custom implementation to bind to the interface type.