Move AccessGen and CodeGenSupport to sane packages

AccessGen is only needed in our .jdbc package, so move it there
and make the API package-level only rather than public.  This way
its not accidentally used by another backend, because its really
quite JDBC specific.

Move CodeGenSuppor to .server package alongside other common code
generation classes, as its used by not only the JDBC based AccessGen
but also by the protobuf CodecGen by overriding JDBC specific output
methods with protobuf based variants of the same function.

Change-Id: I4ef50add4dfbd47dcf2a4fd86a34888d19f9bb20
Signed-off-by: Shawn O. Pearce <sop@google.com>
diff --git a/src/main/java/com/google/gwtorm/jdbc/gen/AccessGen.java b/src/main/java/com/google/gwtorm/jdbc/AccessGen.java
similarity index 98%
rename from src/main/java/com/google/gwtorm/jdbc/gen/AccessGen.java
rename to src/main/java/com/google/gwtorm/jdbc/AccessGen.java
index f8496de..ea1412f 100644
--- a/src/main/java/com/google/gwtorm/jdbc/gen/AccessGen.java
+++ b/src/main/java/com/google/gwtorm/jdbc/AccessGen.java
@@ -12,20 +12,19 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package com.google.gwtorm.jdbc.gen;
+package com.google.gwtorm.jdbc;
 
 import com.google.gwtorm.client.Access;
 import com.google.gwtorm.client.Key;
 import com.google.gwtorm.client.OrmException;
 import com.google.gwtorm.client.impl.ListResultSet;
-import com.google.gwtorm.jdbc.JdbcAccess;
-import com.google.gwtorm.jdbc.JdbcSchema;
 import com.google.gwtorm.schema.ColumnModel;
 import com.google.gwtorm.schema.KeyModel;
 import com.google.gwtorm.schema.QueryModel;
 import com.google.gwtorm.schema.RelationModel;
 import com.google.gwtorm.schema.Util;
 import com.google.gwtorm.schema.sql.SqlDialect;
+import com.google.gwtorm.server.CodeGenSupport;
 import com.google.gwtorm.server.GeneratedClassLoader;
 
 import org.objectweb.asm.ClassWriter;
@@ -43,7 +42,7 @@
 import java.util.List;
 
 /** Generates a concrete implementation of an {@link Access} extension. */
-public class AccessGen implements Opcodes {
+class AccessGen implements Opcodes {
   private static final String REL_ALIAS = "T";
 
   private static enum DmlType {
@@ -70,8 +69,7 @@
   private String implTypeName;
   private Type entityType;
 
-
-  public AccessGen(final GeneratedClassLoader loader,
+  AccessGen(final GeneratedClassLoader loader,
       final RelationModel rm, final SqlDialect sd) {
     classLoader = loader;
     model = rm;
@@ -80,7 +78,7 @@
         Type.getObjectType(model.getEntityTypeClassName().replace('.', '/'));
   }
 
-  public <A extends Access<?, ?>> Class<A> create() throws OrmException {
+  <A extends Access<?, ?>> Class<A> create() throws OrmException {
     init();
     implementConstructor();
     implementGetString("getRelationName", model.getRelationName());
diff --git a/src/main/java/com/google/gwtorm/jdbc/Database.java b/src/main/java/com/google/gwtorm/jdbc/Database.java
index 976998b..e1982d5 100644
--- a/src/main/java/com/google/gwtorm/jdbc/Database.java
+++ b/src/main/java/com/google/gwtorm/jdbc/Database.java
@@ -19,7 +19,6 @@
 import com.google.gwtorm.client.OrmException;
 import com.google.gwtorm.client.Schema;
 import com.google.gwtorm.client.SchemaFactory;
-import com.google.gwtorm.jdbc.gen.AccessGen;
 import com.google.gwtorm.schema.RelationModel;
 import com.google.gwtorm.schema.SchemaModel;
 import com.google.gwtorm.schema.java.JavaSchemaModel;
diff --git a/src/main/java/com/google/gwtorm/protobuf/CodecGen.java b/src/main/java/com/google/gwtorm/protobuf/CodecGen.java
index 9c9ed27..05e5d6d 100644
--- a/src/main/java/com/google/gwtorm/protobuf/CodecGen.java
+++ b/src/main/java/com/google/gwtorm/protobuf/CodecGen.java
@@ -16,10 +16,10 @@
 
 import com.google.gwtorm.client.Column;
 import com.google.gwtorm.client.OrmException;
-import com.google.gwtorm.jdbc.gen.CodeGenSupport;
 import com.google.gwtorm.schema.ColumnModel;
 import com.google.gwtorm.schema.Util;
 import com.google.gwtorm.schema.java.JavaColumnModel;
+import com.google.gwtorm.server.CodeGenSupport;
 import com.google.gwtorm.server.GeneratedClassLoader;
 import com.google.protobuf.ByteString;
 import com.google.protobuf.CodedInputStream;
diff --git a/src/main/java/com/google/gwtorm/schema/sql/SqlBooleanTypeInfo.java b/src/main/java/com/google/gwtorm/schema/sql/SqlBooleanTypeInfo.java
index afea6b3..57f8fe8 100644
--- a/src/main/java/com/google/gwtorm/schema/sql/SqlBooleanTypeInfo.java
+++ b/src/main/java/com/google/gwtorm/schema/sql/SqlBooleanTypeInfo.java
@@ -14,8 +14,8 @@
 
 package com.google.gwtorm.schema.sql;
 
-import com.google.gwtorm.jdbc.gen.CodeGenSupport;
 import com.google.gwtorm.schema.ColumnModel;
+import com.google.gwtorm.server.CodeGenSupport;
 
 import org.objectweb.asm.Label;
 import org.objectweb.asm.Opcodes;
diff --git a/src/main/java/com/google/gwtorm/schema/sql/SqlByteArrayTypeInfo.java b/src/main/java/com/google/gwtorm/schema/sql/SqlByteArrayTypeInfo.java
index 12ed53a..eb0f840 100644
--- a/src/main/java/com/google/gwtorm/schema/sql/SqlByteArrayTypeInfo.java
+++ b/src/main/java/com/google/gwtorm/schema/sql/SqlByteArrayTypeInfo.java
@@ -14,8 +14,8 @@
 
 package com.google.gwtorm.schema.sql;
 
-import com.google.gwtorm.jdbc.gen.CodeGenSupport;
 import com.google.gwtorm.schema.ColumnModel;
+import com.google.gwtorm.server.CodeGenSupport;
 
 import org.objectweb.asm.Opcodes;
 import org.objectweb.asm.Type;
diff --git a/src/main/java/com/google/gwtorm/schema/sql/SqlCharTypeInfo.java b/src/main/java/com/google/gwtorm/schema/sql/SqlCharTypeInfo.java
index 890600f..510993a 100644
--- a/src/main/java/com/google/gwtorm/schema/sql/SqlCharTypeInfo.java
+++ b/src/main/java/com/google/gwtorm/schema/sql/SqlCharTypeInfo.java
@@ -14,8 +14,8 @@
 
 package com.google.gwtorm.schema.sql;
 
-import com.google.gwtorm.jdbc.gen.CodeGenSupport;
 import com.google.gwtorm.schema.ColumnModel;
+import com.google.gwtorm.server.CodeGenSupport;
 
 import org.objectweb.asm.Opcodes;
 import org.objectweb.asm.Type;
diff --git a/src/main/java/com/google/gwtorm/schema/sql/SqlStringTypeInfo.java b/src/main/java/com/google/gwtorm/schema/sql/SqlStringTypeInfo.java
index 2ca7522..2c32f1e 100644
--- a/src/main/java/com/google/gwtorm/schema/sql/SqlStringTypeInfo.java
+++ b/src/main/java/com/google/gwtorm/schema/sql/SqlStringTypeInfo.java
@@ -15,8 +15,8 @@
 package com.google.gwtorm.schema.sql;
 
 import com.google.gwtorm.client.Column;
-import com.google.gwtorm.jdbc.gen.CodeGenSupport;
 import com.google.gwtorm.schema.ColumnModel;
+import com.google.gwtorm.server.CodeGenSupport;
 
 import org.objectweb.asm.Opcodes;
 import org.objectweb.asm.Type;
diff --git a/src/main/java/com/google/gwtorm/schema/sql/SqlTypeInfo.java b/src/main/java/com/google/gwtorm/schema/sql/SqlTypeInfo.java
index ba9064e..f238541 100644
--- a/src/main/java/com/google/gwtorm/schema/sql/SqlTypeInfo.java
+++ b/src/main/java/com/google/gwtorm/schema/sql/SqlTypeInfo.java
@@ -14,8 +14,8 @@
 
 package com.google.gwtorm.schema.sql;
 
-import com.google.gwtorm.jdbc.gen.CodeGenSupport;
 import com.google.gwtorm.schema.ColumnModel;
+import com.google.gwtorm.server.CodeGenSupport;
 
 import org.objectweb.asm.Opcodes;
 import org.objectweb.asm.Type;
diff --git a/src/main/java/com/google/gwtorm/jdbc/gen/CodeGenSupport.java b/src/main/java/com/google/gwtorm/server/CodeGenSupport.java
similarity index 98%
rename from src/main/java/com/google/gwtorm/jdbc/gen/CodeGenSupport.java
rename to src/main/java/com/google/gwtorm/server/CodeGenSupport.java
index 2d78ccc..71756ee 100644
--- a/src/main/java/com/google/gwtorm/jdbc/gen/CodeGenSupport.java
+++ b/src/main/java/com/google/gwtorm/server/CodeGenSupport.java
@@ -12,7 +12,7 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-package com.google.gwtorm.jdbc.gen;
+package com.google.gwtorm.server;
 
 import com.google.gwtorm.schema.ColumnModel;
 
@@ -197,7 +197,7 @@
     return Type.getObjectType(n.replace('.', '/'));
   }
 
-  static Type toType(final ColumnModel c) {
+  public static Type toType(final ColumnModel c) {
     if (c.isSqlPrimitive()) {
       return Type.getType(c.getPrimitiveType());
     }