code: private static <L extends Annotation> String defineWhereStatement(final SQLiteModelMethod method, final JQL jql, Class<L> annotation, Map<JQLDynamicStatementType, String> dynamicReplace) {
  		StringBuilder builder = new StringBuilder();
  
  		String where = AnnotationUtility.extractAsString(method.getElement(), annotation, AnnotationAttributeType.WHERE);
  		if (StringUtils.hasText(where))
  			jql.annotatedWhere = true;
  
  		if (StringUtils.hasText(where) || method.hasDynamicWhereConditions()) {
  			builder.append(" " + WHERE_KEYWORD);
  
  			if (StringUtils.hasText(where)) {
  				jql.staticWhereConditions = true;
  				builder.append(StringUtils.startWithSpace(where));
  			}
  
  			if (StringUtils.hasText(method.dynamicWhereParameterName)) {
  				StringBuilder dynamicBuffer = new StringBuilder();
  				dynamicBuffer.append(" #{" + JQLDynamicStatementType.DYNAMIC_WHERE + "}");
  				builder.append(" #{" + JQLDynamicStatementType.DYNAMIC_WHERE + "}");
  
  				// define replacement string for WHERE
  				dynamicReplace.put(JQLDynamicStatementType.DYNAMIC_WHERE, dynamicBuffer.toString());
  			}
  
  		}
  
  		return builder.toString();
  	}
docs: Define WHERE statement.
  
  @param <L>
  the generic type
  @param method
  the method
  @param jql
  the jql
  @param annotation
  the annotation
  @param dynamicReplace
  the dynamic replace
  @return the string