Skip to content

Commit 422ff68

Browse files
committed
Add Calendar Event Management Service
- Introduce CalendarEventService interface for managing calendar events programmatically. - Implement CalendarEventServiceImpl to provide methods for adding, updating, deleting, and retrieving calendar events. - Ensure validation for required fields and implement event filtering by user and date range. - Integrate with CalendarEventsFacade for database operations related to calendar events.
1 parent a8af2ab commit 422ff68

File tree

5 files changed

+441
-400
lines changed

5 files changed

+441
-400
lines changed

src/main/java/org/example/hvvs/model/CalendarEventsFacade.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
import jakarta.ejb.Stateless;
88
import jakarta.persistence.EntityManager;
99
import jakarta.persistence.PersistenceContext;
10+
import jakarta.persistence.TypedQuery;
11+
import java.util.List;
1012

1113
/**
1214
*
@@ -27,4 +29,28 @@ public CalendarEventsFacade() {
2729
super(CalendarEvents.class);
2830
}
2931

32+
/**
33+
* Executes a named query with a single parameter
34+
*
35+
* @param queryName the name of the named query
36+
* @param paramName the parameter name
37+
* @param paramValue the parameter value
38+
* @return list of calendar events matching the query
39+
*/
40+
public List<CalendarEvents> findByNamedQuery(String queryName, String paramName, Object paramValue) {
41+
TypedQuery<CalendarEvents> query = em.createNamedQuery(queryName, CalendarEvents.class);
42+
query.setParameter(paramName, paramValue);
43+
return query.getResultList();
44+
}
45+
46+
/**
47+
* Finds events for a specific user
48+
*
49+
* @param user the user to find events for
50+
* @return list of calendar events for the user
51+
*/
52+
public List<CalendarEvents> findByUser(Users user) {
53+
return findByNamedQuery("CalendarEvents.findByUser", "user", user);
54+
}
55+
3056
}

0 commit comments

Comments
 (0)