// ----------> GENERATED FILE - DON'T TOUCH! <----------
// generator: ilarkesto.mda.legacy.generator.DaoGenerator
package scrum.server.pr;
import java.util.*;
import ilarkesto.persistence.*;
import ilarkesto.core.logging.Log;
import ilarkesto.base.*;
import ilarkesto.base.time.*;
import ilarkesto.auth.*;
import ilarkesto.fp.*;
public abstract class GBlogEntryDao
extends ilarkesto.persistence.ADao<BlogEntry> {
public final String getEntityName() {
return BlogEntry.TYPE;
}
public final Class getEntityClass() {
return BlogEntry.class;
}
public Set<BlogEntry> getEntitiesVisibleForUser(final scrum.server.admin.User user) {
return getEntities(new Predicate<BlogEntry>() {
public boolean test(BlogEntry e) {
return Auth.isVisible(e, user);
}
});
}
// --- clear caches ---
public void clearCaches() {
blogEntrysByProjectCache.clear();
projectsCache = null;
blogEntrysByNumberCache.clear();
numbersCache = null;
blogEntrysByAuthorCache.clear();
authorsCache = null;
blogEntrysByTitleCache.clear();
titlesCache = null;
blogEntrysByTextCache.clear();
textsCache = null;
blogEntrysByDateAndTimeCache.clear();
dateAndTimesCache = null;
blogEntrysByReleaseCache.clear();
releasesCache = null;
blogEntrysByPublishedCache.clear();
}
@Override
public void entityDeleted(EntityEvent event) {
super.entityDeleted(event);
if (event.getEntity() instanceof BlogEntry) {
clearCaches();
}
}
@Override
public void entitySaved(EntityEvent event) {
super.entitySaved(event);
if (event.getEntity() instanceof BlogEntry) {
clearCaches();
}
}
// -----------------------------------------------------------
// - project
// -----------------------------------------------------------
private final Cache<scrum.server.project.Project,Set<BlogEntry>> blogEntrysByProjectCache = new Cache<scrum.server.project.Project,Set<BlogEntry>>(
new Cache.Factory<scrum.server.project.Project,Set<BlogEntry>>() {
public Set<BlogEntry> create(scrum.server.project.Project project) {
return getEntities(new IsProject(project));
}
});
public final Set<BlogEntry> getBlogEntrysByProject(scrum.server.project.Project project) {
return blogEntrysByProjectCache.get(project);
}
private Set<scrum.server.project.Project> projectsCache;
public final Set<scrum.server.project.Project> getProjects() {
if (projectsCache == null) {
projectsCache = new HashSet<scrum.server.project.Project>();
for (BlogEntry e : getEntities()) {
if (e.isProjectSet()) projectsCache.add(e.getProject());
}
}
return projectsCache;
}
private static class IsProject implements Predicate<BlogEntry> {
private scrum.server.project.Project value;
public IsProject(scrum.server.project.Project value) {
this.value = value;
}
public boolean test(BlogEntry e) {
return e.isProject(value);
}
}
// -----------------------------------------------------------
// - number
// -----------------------------------------------------------
private final Cache<Integer,Set<BlogEntry>> blogEntrysByNumberCache = new Cache<Integer,Set<BlogEntry>>(
new Cache.Factory<Integer,Set<BlogEntry>>() {
public Set<BlogEntry> create(Integer number) {
return getEntities(new IsNumber(number));
}
});
public final Set<BlogEntry> getBlogEntrysByNumber(int number) {
return blogEntrysByNumberCache.get(number);
}
private Set<Integer> numbersCache;
public final Set<Integer> getNumbers() {
if (numbersCache == null) {
numbersCache = new HashSet<Integer>();
for (BlogEntry e : getEntities()) {
numbersCache.add(e.getNumber());
}
}
return numbersCache;
}
private static class IsNumber implements Predicate<BlogEntry> {
private int value;
public IsNumber(int value) {
this.value = value;
}
public boolean test(BlogEntry e) {
return e.isNumber(value);
}
}
// -----------------------------------------------------------
// - authors
// -----------------------------------------------------------
private final Cache<scrum.server.admin.User,Set<BlogEntry>> blogEntrysByAuthorCache = new Cache<scrum.server.admin.User,Set<BlogEntry>>(
new Cache.Factory<scrum.server.admin.User,Set<BlogEntry>>() {
public Set<BlogEntry> create(scrum.server.admin.User author) {
return getEntities(new ContainsAuthor(author));
}
});
public final Set<BlogEntry> getBlogEntrysByAuthor(scrum.server.admin.User author) {
return blogEntrysByAuthorCache.get(author);
}
private Set<scrum.server.admin.User> authorsCache;
public final Set<scrum.server.admin.User> getAuthors() {
if (authorsCache == null) {
authorsCache = new HashSet<scrum.server.admin.User>();
for (BlogEntry e : getEntities()) {
authorsCache.addAll(e.getAuthors());
}
}
return authorsCache;
}
private static class ContainsAuthor implements Predicate<BlogEntry> {
private scrum.server.admin.User value;
public ContainsAuthor(scrum.server.admin.User value) {
this.value = value;
}
public boolean test(BlogEntry e) {
return e.containsAuthor(value);
}
}
// -----------------------------------------------------------
// - title
// -----------------------------------------------------------
private final Cache<java.lang.String,Set<BlogEntry>> blogEntrysByTitleCache = new Cache<java.lang.String,Set<BlogEntry>>(
new Cache.Factory<java.lang.String,Set<BlogEntry>>() {
public Set<BlogEntry> create(java.lang.String title) {
return getEntities(new IsTitle(title));
}
});
public final Set<BlogEntry> getBlogEntrysByTitle(java.lang.String title) {
return blogEntrysByTitleCache.get(title);
}
private Set<java.lang.String> titlesCache;
public final Set<java.lang.String> getTitles() {
if (titlesCache == null) {
titlesCache = new HashSet<java.lang.String>();
for (BlogEntry e : getEntities()) {
if (e.isTitleSet()) titlesCache.add(e.getTitle());
}
}
return titlesCache;
}
private static class IsTitle implements Predicate<BlogEntry> {
private java.lang.String value;
public IsTitle(java.lang.String value) {
this.value = value;
}
public boolean test(BlogEntry e) {
return e.isTitle(value);
}
}
// -----------------------------------------------------------
// - text
// -----------------------------------------------------------
private final Cache<java.lang.String,Set<BlogEntry>> blogEntrysByTextCache = new Cache<java.lang.String,Set<BlogEntry>>(
new Cache.Factory<java.lang.String,Set<BlogEntry>>() {
public Set<BlogEntry> create(java.lang.String text) {
return getEntities(new IsText(text));
}
});
public final Set<BlogEntry> getBlogEntrysByText(java.lang.String text) {
return blogEntrysByTextCache.get(text);
}
private Set<java.lang.String> textsCache;
public final Set<java.lang.String> getTexts() {
if (textsCache == null) {
textsCache = new HashSet<java.lang.String>();
for (BlogEntry e : getEntities()) {
if (e.isTextSet()) textsCache.add(e.getText());
}
}
return textsCache;
}
private static class IsText implements Predicate<BlogEntry> {
private java.lang.String value;
public IsText(java.lang.String value) {
this.value = value;
}
public boolean test(BlogEntry e) {
return e.isText(value);
}
}
// -----------------------------------------------------------
// - dateAndTime
// -----------------------------------------------------------
private final Cache<ilarkesto.base.time.DateAndTime,Set<BlogEntry>> blogEntrysByDateAndTimeCache = new Cache<ilarkesto.base.time.DateAndTime,Set<BlogEntry>>(
new Cache.Factory<ilarkesto.base.time.DateAndTime,Set<BlogEntry>>() {
public Set<BlogEntry> create(ilarkesto.base.time.DateAndTime dateAndTime) {
return getEntities(new IsDateAndTime(dateAndTime));
}
});
public final Set<BlogEntry> getBlogEntrysByDateAndTime(ilarkesto.base.time.DateAndTime dateAndTime) {
return blogEntrysByDateAndTimeCache.get(dateAndTime);
}
private Set<ilarkesto.base.time.DateAndTime> dateAndTimesCache;
public final Set<ilarkesto.base.time.DateAndTime> getDateAndTimes() {
if (dateAndTimesCache == null) {
dateAndTimesCache = new HashSet<ilarkesto.base.time.DateAndTime>();
for (BlogEntry e : getEntities()) {
if (e.isDateAndTimeSet()) dateAndTimesCache.add(e.getDateAndTime());
}
}
return dateAndTimesCache;
}
private static class IsDateAndTime implements Predicate<BlogEntry> {
private ilarkesto.base.time.DateAndTime value;
public IsDateAndTime(ilarkesto.base.time.DateAndTime value) {
this.value = value;
}
public boolean test(BlogEntry e) {
return e.isDateAndTime(value);
}
}
// -----------------------------------------------------------
// - releases
// -----------------------------------------------------------
private final Cache<scrum.server.release.Release,Set<BlogEntry>> blogEntrysByReleaseCache = new Cache<scrum.server.release.Release,Set<BlogEntry>>(
new Cache.Factory<scrum.server.release.Release,Set<BlogEntry>>() {
public Set<BlogEntry> create(scrum.server.release.Release release) {
return getEntities(new ContainsRelease(release));
}
});
public final Set<BlogEntry> getBlogEntrysByRelease(scrum.server.release.Release release) {
return blogEntrysByReleaseCache.get(release);
}
private Set<scrum.server.release.Release> releasesCache;
public final Set<scrum.server.release.Release> getReleases() {
if (releasesCache == null) {
releasesCache = new HashSet<scrum.server.release.Release>();
for (BlogEntry e : getEntities()) {
releasesCache.addAll(e.getReleases());
}
}
return releasesCache;
}
private static class ContainsRelease implements Predicate<BlogEntry> {
private scrum.server.release.Release value;
public ContainsRelease(scrum.server.release.Release value) {
this.value = value;
}
public boolean test(BlogEntry e) {
return e.containsRelease(value);
}
}
// -----------------------------------------------------------
// - published
// -----------------------------------------------------------
private final Cache<Boolean,Set<BlogEntry>> blogEntrysByPublishedCache = new Cache<Boolean,Set<BlogEntry>>(
new Cache.Factory<Boolean,Set<BlogEntry>>() {
public Set<BlogEntry> create(Boolean published) {
return getEntities(new IsPublished(published));
}
});
public final Set<BlogEntry> getBlogEntrysByPublished(boolean published) {
return blogEntrysByPublishedCache.get(published);
}
private static class IsPublished implements Predicate<BlogEntry> {
private boolean value;
public IsPublished(boolean value) {
this.value = value;
}
public boolean test(BlogEntry e) {
return value == e.isPublished();
}
}
// --- valueObject classes ---
@Override
protected Set<Class> getValueObjectClasses() {
Set<Class> ret = new HashSet<Class>(super.getValueObjectClasses());
return ret;
}
@Override
public Map<String, Class> getAliases() {
Map<String, Class> aliases = new HashMap<String, Class>(super.getAliases());
return aliases;
}
// --- dependencies ---
scrum.server.project.ProjectDao projectDao;
public void setProjectDao(scrum.server.project.ProjectDao projectDao) {
this.projectDao = projectDao;
}
scrum.server.release.ReleaseDao releaseDao;
public void setReleaseDao(scrum.server.release.ReleaseDao releaseDao) {
this.releaseDao = releaseDao;
}
}