// Path: ormlite-content-provider-library/src/com/tojc/ormlite/android/annotation/OrmLiteAnnotationAccessor.java
// public final class OrmLiteAnnotationAccessor {
// 
//     private OrmLiteAnnotationAccessor() {
//         // utility constructor
//     }
// 
//     /**
//      * Gets the table name from DatabaseTable annotation. If the DatabaseTable#tableName is not
//      * specified, returns the class name.
//      * @param element
//      *            Element to be evaluated.
//      * @return Returns the table name.
//      */
//     public static String getAnnotationTableName(AnnotatedElement element) {
//         String result = "";
//         result = DatabaseTableConfig.extractTableName((Class<?>) element);
//         return result;
//     }
// 
//     /**
//      * Gets the column name from DatabaseField annotation. If the DatabaseField#columnName is not
//      * specified, returns the field name.
//      * @param element
//      *            Element to be evaluated.
//      * @return Returns the column name.
//      */
//     public static String getAnnotationColumnName(AnnotatedElement element) {
//         String result = "";
//         DatabaseField databaseField = element.getAnnotation(DatabaseField.class);
//         if (databaseField != null) {
//             result = databaseField.columnName();
//             if (TextUtils.isEmpty(result)) {
//                 result = ((Field) element).getName();
//             }
//         }
//         return result;
//     }
// }
// 
// Path: ormlite-content-provider-library/src/com/tojc/ormlite/android/annotation/info/ContentUriInfo.java
// public class ContentUriInfo extends AnnotationInfoBase {
//     // ----------------------------------
//     // ATTRIBUTES
//     // ----------------------------------
//     private String authority;
//     private String path;
// 
//     // ----------------------------------
//     // CONSTRUCTORS
//     // ----------------------------------
//     public ContentUriInfo(AnnotatedElement element) {
//         DefaultContentUri contentUri = element.getAnnotation(DefaultContentUri.class);
//         String authority = null;
//         String path = null;
//         if (contentUri != null) {
//             authority = contentUri.authority();
//             path = contentUri.path();
//         }
// 
//         if (element instanceof Class<?>) {
//             Class<?> clazz = (Class<?>) element;
//             if (TextUtils.isEmpty(authority)) {
//                 authority = clazz.getPackage().getName();
//             }
//             if (TextUtils.isEmpty(path)) {
//                 // TODO use DataBase annotation
//                 path = clazz.getSimpleName().toLowerCase();
//             }
//         }
// 
//         initialize(authority, path);
//     }
// 
//     public ContentUriInfo(String authority, String path) {
//         initialize(authority, path);
//     }
// 
//     // ----------------------------------
//     // PUBLIC METHODS
//     // ----------------------------------
//     public String getAuthority() {
//         return this.authority;
//     }
// 
//     public String getPath() {
//         return this.path;
//     }
// 
//     public Uri getContentUri() {
//         return new Uri.Builder().scheme(ContentResolver.SCHEME_CONTENT).authority(this.authority).appendPath(this.path).build();
//     }
// 
//     @Override
//     protected boolean isValidValue() {
//         return !TextUtils.isEmpty(this.authority) && !TextUtils.isEmpty(this.path);
//     }
// 
//     // ----------------------------------
//     // PRIVATE METHODS
//     // ----------------------------------
//     private void initialize(String authority, String path) {
//         this.authority = authority;
//         this.path = path;
//         validFlagOn();
//     }
// 
//     @Override
//     public String toString() {
//         return "ContentUriInfo{"
//                 + "authority='" + authority + '\''
//                 + ", path='" + path + '\''
//                 + "} " + super.toString();
//     }
// }


import com.j256.ormlite.field.DatabaseField;
import com.tojc.ormlite.android.annotation.OrmLiteAnnotationAccessor;
import com.tojc.ormlite.android.annotation.info.ContentMimeTypeVndInfo;
import com.tojc.ormlite.android.annotation.info.ContentUriInfo;
import com.tojc.ormlite.android.annotation.info.SortOrderInfo;
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.Map;
import java.util.SortedMap;
import java.util.TreeMap;
import android.text.TextUtils;
import android.provider.BaseColumns;
/*
 * This file is part of the Android-OrmLiteContentProvider package.
 *
 * Copyright (c) 2012, Android-OrmLiteContentProvider Team.
 *                     Jaken Jarvis (jaken.jarvis@gmail.com)
 *
 * 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.
 *
 * The author may be contacted via
 * https://github.com/jakenjarvis/Android-OrmLiteContentProvider
 */
package com.tojc.ormlite.android.framework;





/**
 * Manage the database table information.
 * @author Jaken
 */
public class TableInfo implements Validity {
    private Class<?> classType;
    private String name;

// Path: ormlite-content-provider-library/src/com/tojc/ormlite/android/annotation/OrmLiteAnnotationAccessor.java
// public final class OrmLiteAnnotationAccessor {
// 
//     private OrmLiteAnnotationAccessor() {
//         // utility constructor
//     }
// 
//     /**
//      * Gets the table name from DatabaseTable annotation. If the DatabaseTable#tableName is not
//      * specified, returns the class name.
//      * @param element
//      *            Element to be evaluated.
//      * @return Returns the table name.
//      */
//     public static String getAnnotationTableName(AnnotatedElement element) {
//         String result = "";
//         result = DatabaseTableConfig.extractTableName((Class<?>) element);
//         return result;
//     }
// 
//     /**
//      * Gets the column name from DatabaseField annotation. If the DatabaseField#columnName is not
//      * specified, returns the field name.
//      * @param element
//      *            Element to be evaluated.
//      * @return Returns the column name.
//      */
//     public static String getAnnotationColumnName(AnnotatedElement element) {
//         String result = "";
//         DatabaseField databaseField = element.getAnnotation(DatabaseField.class);
//         if (databaseField != null) {
//             result = databaseField.columnName();
//             if (TextUtils.isEmpty(result)) {
//                 result = ((Field) element).getName();
//             }
//         }
//         return result;
//     }
// }
// 
// Path: ormlite-content-provider-library/src/com/tojc/ormlite/android/annotation/info/ContentUriInfo.java
// public class ContentUriInfo extends AnnotationInfoBase {
//     // ----------------------------------
//     // ATTRIBUTES
//     // ----------------------------------
//     private String authority;
//     private String path;
// 
//     // ----------------------------------
//     // CONSTRUCTORS
//     // ----------------------------------
//     public ContentUriInfo(AnnotatedElement element) {
//         DefaultContentUri contentUri = element.getAnnotation(DefaultContentUri.class);
//         String authority = null;
//         String path = null;
//         if (contentUri != null) {
//             authority = contentUri.authority();
//             path = contentUri.path();
//         }
// 
//         if (element instanceof Class<?>) {
//             Class<?> clazz = (Class<?>) element;
//             if (TextUtils.isEmpty(authority)) {
//                 authority = clazz.getPackage().getName();
//             }
//             if (TextUtils.isEmpty(path)) {
//                 // TODO use DataBase annotation
//                 path = clazz.getSimpleName().toLowerCase();
//             }
//         }
// 
//         initialize(authority, path);
//     }
// 
//     public ContentUriInfo(String authority, String path) {
//         initialize(authority, path);
//     }
// 
//     // ----------------------------------
//     // PUBLIC METHODS
//     // ----------------------------------
//     public String getAuthority() {
//         return this.authority;
//     }
// 
//     public String getPath() {
//         return this.path;
//     }
// 
//     public Uri getContentUri() {
//         return new Uri.Builder().scheme(ContentResolver.SCHEME_CONTENT).authority(this.authority).appendPath(this.path).build();
//     }
// 
//     @Override
//     protected boolean isValidValue() {
//         return !TextUtils.isEmpty(this.authority) && !TextUtils.isEmpty(this.path);
//     }
// 
//     // ----------------------------------
//     // PRIVATE METHODS
//     // ----------------------------------
//     private void initialize(String authority, String path) {
//         this.authority = authority;
//         this.path = path;
//         validFlagOn();
//     }
// 
//     @Override
//     public String toString() {
//         return "ContentUriInfo{"
//                 + "authority='" + authority + '\''
//                 + ", path='" + path + '\''
//                 + "} " + super.toString();
//     }
// }


// Path: ormlite-content-provider-library/src/com/tojc/ormlite/android/framework/TableInfo.java
import com.j256.ormlite.field.DatabaseField;
import com.tojc.ormlite.android.annotation.OrmLiteAnnotationAccessor;
import com.tojc.ormlite.android.annotation.info.ContentMimeTypeVndInfo;
import com.tojc.ormlite.android.annotation.info.ContentUriInfo;
import com.tojc.ormlite.android.annotation.info.SortOrderInfo;
import java.lang.reflect.Field;
import java.util.HashMap;
import java.util.Map;
import java.util.SortedMap;
import java.util.TreeMap;
import android.text.TextUtils;
import android.provider.BaseColumns;

/*
 * This file is part of the Android-OrmLiteContentProvider package.
 *
 * Copyright (c) 2012, Android-OrmLiteContentProvider Team.
 *                     Jaken Jarvis (jaken.jarvis@gmail.com)
 *
 * 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.
 *
 * The author may be contacted via
 * https://github.com/jakenjarvis/Android-OrmLiteContentProvider
 */
package com.tojc.ormlite.android.framework;





/**
 * Manage the database table information.
 * @author Jaken
 */
public class TableInfo implements Validity {
    private Class<?> classType;
    private String name;

    private ContentUriInfo defaultContentUriInfo;