PageRenderTime 15ms CodeModel.GetById 11ms app.highlight 1ms RepoModel.GetById 2ms app.codeStats 0ms

/src/main/java/com/google/ie/business/dao/EntityIndexDao.java

http://thoughtsite.googlecode.com/
Java | 61 lines | 9 code | 9 blank | 43 comment | 0 complexity | bc1fa8bee46bcc9b5e57f3febc539717 MD5 | raw file
 1/* Copyright 2010 Google Inc.
 2 * 
 3 * Licensed under the Apache License, Version 2.0 (the "License");
 4 * you may not use this file except in compliance with the License.
 5 * You may obtain a copy of the License at
 6 * 
 7 *      http://www.apache.org/licenses/LICENSE-2.0
 8 * 
 9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS.
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License
14 */
15
16package com.google.ie.business.dao;
17
18import com.google.appengine.api.datastore.Key;
19import com.google.ie.business.domain.EntityIndex;
20
21/**
22 * A data access object specification for EntityIndex entity.
23 * 
24 * @author Ashish K. Dahiya
25 * 
26 */
27public interface EntityIndexDao extends BaseDao {
28
29    /**
30     * Update the entity index status.
31     * 
32     * @param entityIndex to update
33     * @return the updated entity index
34     */
35    EntityIndex updateEntityIndex(EntityIndex entityIndex);
36
37    /**
38     * Retrieves the unindexed entity based on the the entity's index flag.
39     * 
40     * @return one of the unindexed {@link EntityIndex} object
41     */
42    EntityIndex getUnIndexedEntity();
43
44    /**
45     * Creates the EntityIndex for the entity identified by parentKey
46     * 
47     * @param parentKey primary key of the parent entity
48     * @return the Entity Index created for the entity
49     */
50    EntityIndex createEntityIndex(String parentKey);
51
52    /**
53     * Finds an entity by primary key.Works only for entities with {@link Key}
54     * type as id
55     * 
56     * @return the updated entity index
57     */
58    EntityIndex findEntityByPrimaryKey(Key key);
59
60}
61