@Override
	protected URI buildUri() {

		URIBuilder b = URIBuilder.fromUri(API_URL_BASE);


		b.queryParam("q", query);


		if (!includeEntities) {
			b.queryParam("include_entities", "false");
		}

		if (!resultType.equals(ResultType.mixed)) {
			b.queryParam("result_type", resultType.toString());
		}

		if (StringUtils.hasText(getLanguage())) {
			b.queryParam("lang", getLanguage());
		}


		if (StringUtils.hasText(geocode)) {
			b.queryParam("geocode", geocode);
		}

		if (sinceId != null) {
			b.queryParam("since_id", String.valueOf(sinceId));
		}

		URI uri = b.build();
		if (logger.isDebugEnabled()) {
			logger.debug("Search uri:" + uri);
		}
		return uri;
	}
Message producer which reads form Twitter's public search endpoints.
Reads from <a href="https://api.twitter.com/1.1/search/tweets.json"/>
The available parameters map directly to those defined for the
<a href="https://dev.twitter.com/docs/api/1.1/get/search/tweets">public search</a> API.

@author Mark Fisher
@author Luke Taylor
@author David Turanski
extensions/spring-xd-extension-twitter/src/main/java/org/springframework/integration/x/twitter/TwitterSearchChannelAdapter.java