Package com.google.sitebricks.persist

Examples of com.google.sitebricks.persist.Persister


    config2.setPartitionCount(1);
    config2.setMaxConnectionsPerPartition(2);
  }

  private static void createTable(Injector injector, Class<? extends Annotation> selector) {
    Persister persister = injector.getInstance(Key.get(Persister.class, selector));
    persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        ((Sql) es.delegate()).execute("create table my_table (id integer, name text not null)");
        return null;
      }
    });

    final AtomicBoolean tableExists = new AtomicBoolean();
    persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        tableExists.set(((Sql) es.delegate()).tableExists("my_table"));
        return null;
      }
View Full Code Here


    config.setUsername("sa");
    config.setPassword("");
  }

  private static void createTable(Injector injector) {
    Persister persister = injector.getInstance(Persister.class);
    persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        ((Sql) es.delegate()).execute("create table my_table (id integer, name text not null)");
        return null;
      }
    });

    final AtomicBoolean tableExists = new AtomicBoolean();
    persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        tableExists.set(((Sql) es.delegate()).tableExists("my_table"));
        return null;
      }
View Full Code Here

  @Test
  public final void storeAndRetrieveWithoutAop() {
    Injector injector = Guice.createInjector(new SqlModule(config));
    createTable(injector);
    Persister persister = injector
        .getInstance(Persister.class);

    persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        ((Sql)es.delegate()).execute("insert into my_table (id, name) values (1, @name)",
            ImmutableMap.<String, Object>of("name", A_NAME));

        return null;
      }
    });

    Object param = persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        return ((Sql)es.delegate()).list("select * from my_table").iterator().next().get("name").toString();
      }
    });
View Full Code Here

  @Test
  public final void storeAndRemoveWithoutAop() {
    Injector injector = Guice.createInjector(new SqlModule(config));
    createTable(injector);
    Persister persister = injector.getInstance(Persister.class);

    persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        ((Sql)es.delegate()).execute("insert into my_table (id, name) values (1, @name)",
            ImmutableMap.<String, Object>of("name", A_NAME));

        return null;
      }
    });

    persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        ((Sql)es.delegate()).execute("delete from my_table where name = @name and id = @id",
            ImmutableMap.<String, Object>of(
                "id", 1,
                "name", A_NAME
            ));

        return null;
      }
    });

    Object param = persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        return ((Sql)es.delegate()).list("select * from my_table");
      }
    });
View Full Code Here

  @Test // No different in Redis to @Work
  public final void storeAndRetrieveInTransaction() {
    Injector injector = Guice.createInjector(new SqlModule(config));
    createTable(injector);
    final Persister persister = injector
        .getInstance(Persister.class);

    Object param = persister.call(new Persister.InWork() {
      @Override
      public Object perform(EntityStore es) throws Throwable {
        persister.call(new Persister.InTransaction() {
          @Override
          public Object perform(EntityStore es) throws Throwable {
            ((Sql)es.delegate()).execute("insert into my_table (id, name) values (1, @name)",
                ImmutableMap.<String, Object>of("name", ANOTHER_NAME));

            return null;
          }
        });

        return persister.call(new Persister.InTransaction() {
          @Override
          public Object perform(EntityStore es) throws Throwable {
            return ((Sql)es.delegate()).list("select * from my_table").iterator().next().get("name").toString();
          }
        });
View Full Code Here

TOP

Related Classes of com.google.sitebricks.persist.Persister

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.