Hi,
I've been working on a pet project that revolves around performing server-side monitoring of a user's message-related actions (ie reading, deleting, moving, etc). *edit* I should mention this is for ZCS, FRANKLIN build 5.09
The approach I've been taking is to first load a custom extension and add my mail service to the SoapServlet, which then *should* be going about registering the custom MailDocumentHandlers as handlers with the dispatcher. However I see no indication in the logs that the service and my handlers are actually being registered.
I couldn't find much documentation covering this type of work, but I've tried to follow the admin service's lead.
Essentially this is how it's set up to go now:
MonitoringExtension.java
MonitoringService.javaCode:public void init() throws ServiceException { SoapServlet.addService("MonitoringService", new MonitoringService()); }
Code:public class MonitoringService implements DocumentService { public void registerHandlers(DocumentDispatcher dispatcher) { dispatcher.registerHandler(MailConstants.GET_MSG_REQUEST, new MonitoredGetMsg()); dispatcher.registerHandler(MailConstants.CONV_ACTION_REQUEST, new MonitoredConvAction()); } }
I had also tried leveraging the zclient classes and events, but that did not work either.
Now.. I can achieve the desired effect by hacking away at the com.zimbra.cs.service.mail.{GetConv, ConvAction, GetMsg} classes directly and recompiling the zimbraserver, but I'd much rather be able to implement this as a portable extension.
I get the feeling I may be missing some pieces of the puzzle... or maybe this isn't possible through an extension.
Anyone out there got any suggestions?


LinkBack URL
About LinkBacks

