private boolean isCandidate(Container container, String criteria) {
		try {
			return expressionParser.parseExpression(criteria).getValue(evaluationContext, container.getAttributes(),
					Boolean.class);
		}
		catch (SpelEvaluationException e) {
			if (e.getMessageCode().equals(SpelMessage.PROPERTY_OR_FIELD_NOT_READABLE)) {
				logger.debug("candidate does not contain an attribute referenced in the criteria {}", criteria);
			}
			return false;
		}
		catch (EvaluationException e) {
			logger.debug("candidate not a match due to evaluation exception", e);
			return false;
		}
	}
Evaluate the criteria expression against the attributes of the provided container to see if it is a candidate for
module deployment.

@param container the container instance whose attributes should be considered
@param criteria the criteria expression to evaluate against the container attributes
@return whether the container is a candidate
spring-xd-dirt/src/main/java/org/springframework/xd/dirt/server/admin/deployment/ContainerMatcher.java