Skip to content

Instantly share code, notes, and snippets.

@ldoguin
Last active August 29, 2015 14:14
Show Gist options
  • Save ldoguin/81405f56dac6b1d31c83 to your computer and use it in GitHub Desktop.
Save ldoguin/81405f56dac6b1d31c83 to your computer and use it in GitHub Desktop.
Starting application class for spring data couchbase
package org.couchbase.advocacy.metrics;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.couchbase.config.AbstractCouchbaseConfiguration;
import java.util.Arrays;
import java.util.List;
@Configuration
@EnableAutoConfiguration
public class Application extends AbstractCouchbaseConfiguration {
private final static Log log = LogFactory.getLog(Application.class);
@Value("${couchbase.cluster.bucket:default}")
private String bucketName;
@Value("${couchbase.cluster.password:}")
private String password;
@Value("${couchbase.cluster.ip:127.0.0.1}")
private String ip;
@Override
protected List<String> bootstrapHosts() {
return Arrays.asList(ip);
}
@Override
protected String getBucketName() {
return bucketName;
}
@Override
protected String getBucketPassword() {
return password;
}
public static void main(String[] args) {
ConfigurableApplicationContext ctx = SpringApplication.run(Application.class, args);
ctx.close();
}
@Bean
CommandLineRunner commandLineRunner(CouchbaseClient couchbaseClient) {
return args -> {
couchbaseClient.add("aKey","{'json':'object'}");
Object aKey = couchbaseClient().get("aKey");
log.info(aKey);
};
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment