/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. package com.google.ie.business.dao;
  16. import com.google.appengine.api.datastore.Key;
  17. import com.google.ie.business.domain.EntityIndex;
  18. /**
  19. * A data access object specification for EntityIndex entity.
  20. *
  21. * @author Ashish K. Dahiya
  22. *
  23. */
  24. public interface EntityIndexDao extends BaseDao {
  25. /**
  26. * Update the entity index status.
  27. *
  28. * @param entityIndex to update
  29. * @return the updated entity index
  30. */
  31. EntityIndex updateEntityIndex(EntityIndex entityIndex);
  32. /**
  33. * Retrieves the unindexed entity based on the the entity's index flag.
  34. *
  35. * @return one of the unindexed {@link EntityIndex} object
  36. */
  37. EntityIndex getUnIndexedEntity();
  38. /**
  39. * Creates the EntityIndex for the entity identified by parentKey
  40. *
  41. * @param parentKey primary key of the parent entity
  42. * @return the Entity Index created for the entity
  43. */
  44. EntityIndex createEntityIndex(String parentKey);
  45. /**
  46. * Finds an entity by primary key.Works only for entities with {@link Key}
  47. * type as id
  48. *
  49. * @return the updated entity index
  50. */
  51. EntityIndex findEntityByPrimaryKey(Key key);
  52. }