/* * CDDL HEADER START * * The contents of this file are subject to the terms of the Common Development * and Distribution License (the "License"). * You may not use this file except in compliance with the License. * * You can obtain a copy of the license at * src/com/vodafone360/people/VODAFONE.LICENSE.txt or * http://github.com/360/360-Engine-for-Android * See the License for the specific language governing permissions and * limitations under the License. * * When distributing Covered Code, include this CDDL HEADER in each file and * include the License file at src/com/vodafone360/people/VODAFONE.LICENSE.txt. * If applicable, add the following below this CDDL HEADER, with the fields * enclosed by brackets "[]" replaced with your own identifying information: * Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END * * Copyright 2010 Vodafone Sales & Services Ltd. All rights reserved. * Use is subject to license terms. */ package com.vodafone360.people.database.persistenceHelper; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; /** * Annotations for declaring persistable Classes and a marker interface. * <p> * A Class which should be persisted in DB using the persistenceHelper must * implement the persistable interface and declare its columns with the * annotations * <p> * * @version %I%, %G% */ public interface Persistable { /** * Annotation for binding a field to a column. */ public @Retention(RetentionPolicy.RUNTIME) @interface Column { /** column name. **/ String name(); } /** * Annotation for binding a class to a table. */ public @Retention(RetentionPolicy.RUNTIME) @interface Table { /** table name. **/ String name(); } /** * Annotation for declaring an id field. */ public @Retention(RetentionPolicy.RUNTIME) @interface Id { } /** * Annotation for declaring an entity. */ public @Retention(RetentionPolicy.RUNTIME) @interface Entity { } }