AttendeeManager.java
上传用户:dinglihq
上传日期:2013-02-04
资源大小:99958k
文件大小:3k
源码类别:

Java编程

开发平台:

Java

  1. package com.borland.training.meetings.sessions;
  2. import java.util.*;
  3. import javax.ejb.*;
  4. import javax.naming.*;
  5. import com.borland.training.meetings.entities.*;
  6. import com.borland.training.meetings.sessions.*;
  7. class AttendeeManager {
  8.   private static AttendeeManager instance = null;
  9.   private AttendeeValueFactory attendeeValueFactory;
  10.   private MeetingValueFactory meetingValueFactory;
  11.   private EJBHomeFactory homeFactory;
  12.   private AttendeeManager() throws NamingException {
  13.     homeFactory = EJBHomeFactory.getInstance();
  14.     attendeeValueFactory = AttendeeValueFactory.getInstance();
  15.     meetingValueFactory = MeetingValueFactory.getInstance();
  16.   }
  17.   public static AttendeeManager getInstance() throws NamingException {
  18.     if(instance == null) {
  19.       instance = new AttendeeManager();
  20.     }
  21.     return instance;
  22.   }
  23.   public Long createAttendee(AttendeeValue attendeeValue)
  24.     throws FinderException, NamingException {
  25.     try {
  26.       AttendeeHome attendeeHome =
  27.         (AttendeeHome) homeFactory.lookupByLocalEJBReference("Attendee");
  28.       Attendee attendee = attendeeHome.create(attendeeValue.getName(),
  29.         attendeeValue.getPosition(),
  30.         attendeeValue.getTitle(),
  31.         attendeeValue.getPhone(),
  32.         attendeeValue.getEmail());
  33.       return attendee.getId();
  34.     }
  35.     catch(Exception e) {
  36.       throw new EJBException(e);
  37.     }
  38.   }
  39.   // Updating the attendee's meeting list is not supported here.
  40.   // This functionality is provided by the Meeting bean.
  41.   public void updateAttendee(AttendeeValue attendeeValue)
  42.     throws FinderException, NamingException {
  43.     try {
  44.       Attendee attendee = attendeeValueFactory.findAttendee(attendeeValue.getId());
  45.       attendee.setName(attendeeValue.getName());
  46.       attendee.setPosition(attendeeValue.getPosition());
  47.       attendee.setTitle(attendeeValue.getTitle());
  48.       attendee.setPhone(attendeeValue.getPhone());
  49.       attendee.setEmail(attendeeValue.getEmail());
  50.     }
  51.     catch(Exception e) {
  52.       throw new EJBException(e);
  53.     }
  54.   }
  55.   public void removeAttendee(Long id)
  56.     throws FinderException, NamingException {
  57.     try {
  58.       Attendee attendee = attendeeValueFactory.findAttendee(id);
  59.       attendee.remove();
  60.     }
  61.     catch(Exception e) {
  62.       throw new EJBException(e);
  63.     }
  64.   }
  65.   public void removeAllAttendees()
  66.     throws FinderException, NamingException {
  67.     try {
  68.       Collection attendees = attendeeValueFactory.findAllAttendees();
  69.       Iterator iterator = attendees.iterator();
  70.       Attendee attendee = null;
  71.       while(iterator.hasNext()) {
  72.         attendee = (Attendee) iterator.next();
  73.         attendee.remove();
  74.       }
  75.     }
  76.     catch(Exception e) {
  77.       throw new EJBException(e);
  78.     }
  79.   }
  80. }