@Override
	protected void beforeDelete(D definition) {
		validateBeforeDelete(definition.getName());
		if (instanceRepository.exists(definition.getName())) {
			undeploy(definition.getName());
		}
	}
Base support class for deployers that know how to deal with {@link BaseInstance instances} of a
{@link BaseDefinition definition}.

@param D the kind of definition this deployer deals with
@param I the corresponding instance type

@author Eric Bottard
@author Ilayaperumal Gopinathan
spring-xd-dirt/src/main/java/org/springframework/xd/dirt/stream/AbstractInstancePersistingDeployer.java