Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2011 Objectos, Fábrica de Software LTDA.
   *
   * Licensed under the Apache License, Version 2.0 (the "License"); you may not
   * use this file except in compliance with the License. You may obtain a copy of
   * the License at
   *
   * http://www.apache.org/licenses/LICENSE-2.0
   *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  * License for the specific language governing permissions and limitations under
  * the License.
  */
 package br.com.objectos.way.relational;
 
 
 

Author(s):
marcio.endo@objectos.com.br (Marcio Endo)
 
 class AtomicInsertJdbc implements AtomicInsert {
 
   private final Transactions transactions;
 
   @Inject
   public AtomicInsertJdbc(Transactions transactions) {
     this. = transactions;
   }
 
   @Override
   public void of(AtomicInsertOperation operation) {
     execute(operation);
   }
 
   @Override
   public void of(final Object entity) {
     AtomicInsertOperation operation = new AtomicInsertOperation() {
       @Override
       public void execute(Insertion insertionthrows SQLException {
         Preconditions.checkArgument(entity instanceof Insertable,
             "Entity must be instanceof Insertable.");
         Insertable insertable = (Insertableentity;
         insertion.of(insertable);
       }
     };
 
     execute(operation);
   }
 
   @Override
   public void allOf(Iterable<?> entities) {
     Iterator<?> iterator = entities.iterator();
     allOf(iterator);
   }
 
   @Override
   public void allOf(final Iterator<?> entities) {
     AtomicInsertOperation operation = new AtomicInsertOperation() {
       @Override
       public void execute(Insertion insertionthrows SQLException {
 
         Iterator<Insertableiterator = Iterators.transform(entitiesnew ToInsertable());
 
         while (iterator.hasNext()) {
           Insertable insertable = iterator.next();
           insertion.of(insertable);
         }
 
       }
     };
 
     execute(operation);
   }
 
   private void execute(AtomicInsertOperation operation) {
     try {
       .execute(operation);
     } catch (TransactionRolledbackException e) {
       throw new InsertOperationException("Could not insert one or more entities. "
           + "More info below."e);
     }
   }
 
   private class ToInsertable implements Function<ObjectInsertable> {
     @Override
     public Insertable apply(Object input) {
       Preconditions.checkArgument(input instanceof Insertable,
           "Entity must be instanceof Insertable.");
       return (Insertableinput;
    }
  }
New to GrepCode? Check out our FAQ X