/* * Sun Public License Notice * * The contents of this file are subject to the Sun Public License * Version 1.0 (the "License"). You may not use this file except in * compliance with the License. A copy of the License is available at * http://www.sun.com/ * * The Original Code is NetBeans. The Initial Developer of the Original * Code is Sun Microsystems, Inc. Portions Copyright 1997-2000 Sun * Microsystems, Inc. All Rights Reserved. */ package org.netbeans.lib.cvsclient.command; import org.netbeans.lib.cvsclient.admin.Entry; import org.netbeans.lib.cvsclient.event.ICvsListener; import org.netbeans.lib.cvsclient.event.ICvsListenerRegistry; import org.netbeans.lib.cvsclient.event.IEntryListener; import org.netbeans.lib.cvsclient.event.IEventSender; import org.netbeans.lib.cvsclient.file.FileObject; import org.netbeans.lib.cvsclient.file.ICvsFileSystem; import org.netbeans.lib.cvsclient.util.BugLog; import java.io.File; /** * @author Thomas Singer */ public class DefaultEntryParser implements ICvsListener, IEntryListener { // Fields ================================================================= private final IEventSender eventManager; private final ICvsFileSystem cvsFileSystem; // Setup ================================================================== public DefaultEntryParser(IEventSender eventManager, ICvsFileSystem cvsFileSystem) { BugLog.getInstance().assertNotNull(eventManager); BugLog.getInstance().assertNotNull(cvsFileSystem); this.eventManager = eventManager; this.cvsFileSystem = cvsFileSystem; } // Implemented ============================================================ public void registerListeners(ICvsListenerRegistry listenerRegistry) { listenerRegistry.addEntryListener(this); } public void unregisterListeners(ICvsListenerRegistry listenerRegistry) { listenerRegistry.removeEntryListener(this); } public void gotEntry(FileObject fileObject, Entry entry) { final File file = cvsFileSystem.getLocalFileSystem().getFile(fileObject); eventManager.notifyFileInfoListeners(new DefaultFileInfo(fileObject, file)); } }