class VerbaGestaoON extends BaseBusiness {

	private void validaInterseccaoVigenciaFonteRecurso(
			FsoVerbaGestao verbaGestao,
			List<FsoFontesXVerbaGestao> listaFonteXVerba)
			throws ApplicationBusinessException {
		// Verba Inativa nao precisa testar insersecao de periodos
		if (verbaGestao.getSituacao().equals(DominioSituacao.I)) {
			return;
		}

		// Testa intersecao de datas entre Fontes de Recursos que estao sendo
		// inclusas
		for (FsoFontesXVerbaGestao fonteXVerba : listaFonteXVerba) {
			for (FsoFontesXVerbaGestao fonteXVerbaASeremInclusas : listaFonteXVerba) {
				if ((fonteXVerba.getFonteRecursoFinanceiro().getCodigo() == fonteXVerbaASeremInclusas
						.getFonteRecursoFinanceiro().getCodigo() && fonteXVerba != fonteXVerbaASeremInclusas)) {
					if (existeInterseccao(fonteXVerba, fonteXVerbaASeremInclusas)) {
						throw new ApplicationBusinessException(
								CadastroVerbaGestaoONExceptionCode.MENSAGEM_FONTE_RECURSO_JA_VINCULADA);
					}
				}
			}
		}
	}

}