Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
Copyright (c) 2000, 2006 IBM Corporation and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html Contributors: IBM Corporation - initial API and implementation /
 
 package org.eclipse.team.internal.ccvs.ui.repo;
 
 import java.util.List;
 
 import org.xml.sax.*;
 
 public class RepositoriesViewContentHandler extends DefaultHandler {
 
 	public static final String REPOSITORIES_VIEW_TAG = "repositories-view"//$NON-NLS-1$
 
 	public static final String REPOSITORY_TAG = "repository"//$NON-NLS-1$
 	public static final String WORKING_SET_TAG = "working-set"//$NON-NLS-1$
 	public static final String CURRENT_WORKING_SET_TAG = "current-working-set"//$NON-NLS-1$
 	public static final String MODULE_TAG = "module"//$NON-NLS-1$
 	public static final String TAG_TAG = "tag"//$NON-NLS-1$
 	public static final String AUTO_REFRESH_FILE_TAG = "auto-refresh-file"//$NON-NLS-1$
 	public static final String DATE_TAGS_TAG = "date-tags"//$NON-NLS-1$
 	public static final String DATE_TAG_TAG = "date-tag"//$NON-NLS-1$
 	
 	public static final String ID_ATTRIBUTE = "id"//$NON-NLS-1$
 	public static final String NAME_ATTRIBUTE = "name"//$NON-NLS-1$
 	public static final String PATH_ATTRIBUTE = "path"//$NON-NLS-1$
 	public static final String FULL_PATH_ATTRIBUTE = "full-path"//$NON-NLS-1$
 	public static final String TYPE_ATTRIBUTE = "type"//$NON-NLS-1$
 	public static final String READ_ID_ATTRIBUTE = "read-id"//$NON-NLS-1$
 	public static final String WRITE_ID_ATTRIBUTE = "write-id"//$NON-NLS-1$
 	public static final String LAST_ACCESS_TIME_ATTRIBUTE = "lastAcessTime"//$NON-NLS-1$
 	
 	public static final String[] TAG_TYPES = {"head""branch""version""date"}; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
 	public static final String DEFAULT_TAG_TYPE = "version"//$NON-NLS-1$
 	public static final String DEFINED_MODULE_TYPE = "defined"//$NON-NLS-1$
 	
 	private StringBuffer buffer = new StringBuffer();
 	private Stack tagStack = new Stack();
 	private List tags;
 	private List dateTags;
 	private List autoRefreshFiles;
 	private boolean ignoreElements;
 
     private long lastAccessTime;
 
 		this. = manager;
 	}

 
 	public void characters(char[] charsint startIndexint lengththrows SAXException {
 		.append(charsstartIndexlength);
 	}

 
 	public void endElement(String namespaceURIString localNameString qNamethrows SAXException {
 		
 		String elementName = getElementName(namespaceURIlocalNameqName);
 		if (!elementName.equals(.peek())) {
 			throw new SAXException(NLS.bind(.new String[] { elementName })); 
 		}
 		
 		if (elementName.equals()) {
 			// all done
 		} else if (elementName.equals()) {
 			if (!) {
 			}
 		} else if (elementName.equals()) {
 			// This tag is no longer used
 			 = false;
 		} else if (elementName.equals()) {
 			// This tag is no longer used
 			 = false;
 		} else if (elementName.equals()) {
 			if (!  &&  != null) {
				if ( > 0)
			}
		}else if(elementName.equals()){
			if (!  &&  != null) {
				while(iter.hasNext()){
					CVSTag tag = (CVSTag)iter.next();
				}
			}
		}
	}

	public void startElement(
			String namespaceURI,
			String localName,
			String qName,
			throws SAXException {
		String elementName = getElementName(namespaceURIlocalNameqName);
		if (elementName.equals()) {
			// just started
else if (elementName.equals()) {
			if (id == null) {
			}
			try {
				root = KnownRepositories.getInstance().getRepository(id);
				if (!KnownRepositories.getInstance().isKnownRepository(id)) {
					KnownRepositories.getInstance().addRepository(rootfalse);
				}
catch (CVSException e) {
			}
			if (name != null) {
			}
else if(elementName.equals()){
			//prepare to collect date tag
			 = new ArrayList();
else if (elementName.equals()){
			if (name == null) {
			}
			.add(new CVSTag(name.));
		}else if (elementName.equals()) {
			if (name == null) {
			}
			// Ignore any elements until the corresponding end tag is reached
		}  else if (elementName.equals()) {
			if (path == null) {
			}
			if (type != null && type.equals()) {
				path = RepositoryRoot.asDefinedModulePath(path);
			}
			long cachedTime = 0;
			String cachedTimeString = atts.getValue();
			if (cachedTimeString != null) {
			    try {
			        Long time = Long.valueOf(cachedTimeString);
			        cachedTime = time.longValue();
                } catch (NumberFormatException e) {
                    // Ignore
                }
			}
			startModule(pathcachedTime);
else if (elementName.equals()) {
			if (type == null) {
			}
			if (name == null) {
			}
			.add(new CVSTag(namegetCVSTagType(type)));
else if (elementName.equals()) {
			if (path == null) {
				// get the old path attribute format which was relative to the module
				path = atts.getValue();
				if (path == null) {
				}
				if (RepositoryRoot.isDefinedModuleName()) {
					path = null;
else {
					path = new Path(null).append(path).toString();
				}
			}
			if (path != null.add(path);
else if (elementName.equals()) {
			// Ignore any elements until the corresponding end tag is reached
		}
		// empty buffer
		 = new StringBuffer();
		.push(elementName);
	}
	private void startModule(String pathlong cachedTime) {
		 = new ArrayList();
		this. = cachedTime;
	}

Method getCVSTagType.

Parameters:
type
	public int getCVSTagType(String type) {
		for (int i = 0; i < .i++) {
			if ([i].equals(type))
				return i;
		}
		return .;
	}
	/*
	 * Couldn't figure out from the SAX API exactly when localName vs. qName is used.
	 * However, the XML for project sets doesn't use namespaces so either of the two names
	 * is fine. Therefore, use whichever one is provided.
	 */
	private String getElementName(String namespaceURIString localNameString qName) {
		if (localName != null && localName.length() > 0) {
			return localName;
else {
			return qName;
		}
	}
New to GrepCode? Check out our FAQ X