ruper2/src/java/core/org/krysalis/ruper ResourceUpdater.java,1.10,1.11

[email protected]
Newsgroups gmane.comp.krysalis.metamorphosis.cvs
Message-ID <[email protected]>
Update of /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper
In directory sc8-pr-cvs1:/tmp/cvs-serv5134/src/java/core/org/krysalis/ruper

Modified Files:
	ResourceUpdater.java 
Log Message:
1) Finished Query & Query Engine
2) Worked on Files

Index: ResourceUpdater.java
===================================================================
RCS file: /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper/ResourceUpdater.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** ResourceUpdater.java	7 Sep 2003 23:30:00 -0000	1.10
--- ResourceUpdater.java	8 Sep 2003 23:21:41 -0000	1.11
***************
*** 8,13 ****
  
  import java.util.ArrayList;
- import java.util.Collections;
- import java.util.Comparator;
  import java.util.Iterator;
  import java.util.List;
--- 8,11 ----
***************
*** 16,34 ****
  import org.krysalis.ruper.impl.ResourceUpdaterContext;
  import org.krysalis.ruper.impl.ResourceUpdaterIdentifier;
  import org.krysalis.ruper.query.ResourceRequest;
- import org.krysalis.ruper.query.ResourceRequestContext;
  import org.krysalis.ruper.query.ResourceResult;
- import org.krysalis.ruper.repository.DefaultRepositorySet;
  import org.krysalis.ruper.repository.Repository;
! import org.krysalis.ruper.repository.RepositorySet;
  import org.krysalis.ruper.repository.RepositoryWrapper;
  import org.krysalis.ruper.resource.ResourceIdentifier;
- import org.krysalis.ruper.resource.ResourceSpecifier;
- import org.krysalis.ruper.resource.compare.StandardComparisons;
- import org.krysalis.ruper.resource.select.StandardSelections;
  import org.krysalis.ruper.util.RuperConstants;
  import org.krysalis.ruper.util.identity.GenericIdentifier;
  import org.krysalis.ruper.util.reference.Referenceable;
- import org.krysalis.ruper.util.select.Selector;
  import org.krysalis.ruper.util.text.Messages;
  
--- 14,30 ----
  import org.krysalis.ruper.impl.ResourceUpdaterContext;
  import org.krysalis.ruper.impl.ResourceUpdaterIdentifier;
+ import org.krysalis.ruper.log.Logger;
+ import org.krysalis.ruper.query.DefaultQueryEngine;
+ import org.krysalis.ruper.query.ResourceQuery;
  import org.krysalis.ruper.query.ResourceRequest;
  import org.krysalis.ruper.query.ResourceResult;
  import org.krysalis.ruper.repository.Repository;
! import org.krysalis.ruper.repository.RepositoryException;
  import org.krysalis.ruper.repository.RepositoryWrapper;
+ import org.krysalis.ruper.resource.Resource;
  import org.krysalis.ruper.resource.ResourceIdentifier;
  import org.krysalis.ruper.util.RuperConstants;
  import org.krysalis.ruper.util.identity.GenericIdentifier;
  import org.krysalis.ruper.util.reference.Referenceable;
  import org.krysalis.ruper.util.text.Messages;
  
***************
*** 40,43 ****
--- 36,40 ----
  	private ResourceUpdaterIdentifier m_identifier = null;
  	private ResourceUpdaterContext m_context = null;
+ 	private DefaultQueryEngine m_engine = null;
  
  	/**
***************
*** 49,52 ****
--- 46,50 ----
  		m_identifier = identifier;
  		m_context = context;
+ 		m_engine = new DefaultQueryEngine();
  	}
  
***************
*** 54,57 ****
--- 52,56 ----
  		m_identifier = identifier;
  		m_context = new ResourceUpdaterContext(RuperConstants.DEFAULT);
+ 		m_engine = new DefaultQueryEngine();
  	}
  
***************
*** 59,62 ****
--- 58,62 ----
  		m_identifier = new ResourceUpdaterIdentifier(RuperConstants.DEFAULT);
  		m_context = new ResourceUpdaterContext(RuperConstants.DEFAULT);
+ 		m_engine = new DefaultQueryEngine();
  	}
  
***************
*** 113,203 ****
  	}
  
! 	public ResourceResult query(
! 		ResourceRequest request)
! 		throws RuperException {
! 			RepositorySet repos = new DefaultRepositorySet();
  
! 		return query(repos, request, null, null, null);
  	}
  
! 	public ResourceResult query(
! 		RepositorySet repos,
! 		ResourceRequest request,
! 		ResourceRequestContext context)
  		throws RuperException {
  
! 		return query(repos, request, context, null, null);
! 	}
! 	
! 	//:TODO add Comparator groupBy
! 	//
! 
! 	public ResourceResult query(
! 		RepositorySet repos,
! 		ResourceRequest request,
! 		ResourceRequestContext context,
! 		Selector selector,
! 		Comparator comparator)
! 		throws RuperException {
! 		ResourceResult result = new ResourceResult();
  
! 		if ( null == context )
! 			context = new ResourceRequestContext();
  
! 		//:TODO: Total Hack, just to allow something...
! 		// Rework w/ correct configurable components
  
! 		List wrappers = getRepositoryWrappers(repos);
  
! 		for (Iterator i = wrappers.iterator(); i.hasNext();) {
! 			RepositoryWrapper repo = (RepositoryWrapper) i.next();
! 			try {
! 				context.getLogger().debug(
! 					Messages.getString("Search Repo", repo));
  
! 				for (Iterator ii = request.getSpecifiers().iterator();
! 					ii.hasNext();
! 					) {
! 					ResourceSpecifier specifier = (ResourceSpecifier) ii.next();
  
! 					context.getLogger().debug(
! 						Messages.getString("Resource Specifier", specifier));
  
! 					// How to filter
! 					if (null == selector)
! 						selector =
! 							StandardSelections.getNamedTypedVersion(specifier);
  
! 					// Look...
! 					List resources = repo.listResources(specifier, selector);
  
! 					if (resources.isEmpty()) {
! 						context.getLogger().warn(
! 							Messages.getString("NO_RESOURCES_IN_REPO", repo));
! 					}
! 					else {
! 						//
! 						// Do the query
! 						// 
! 						result.addAll(resources);
! 					}
  				}
  			}
- 			catch (Exception e) {
- 				context.getLogger().warn(Messages.getString("LIST_FAILED"), e);
- 			}
- 		}
- 
- 		if (result.isEmpty()) {
- 			context.getLogger().warn(Messages.getString("NO_RESOURCES"));
- 		}
- 		else {
- 			if (null == comparator)
- 				comparator = StandardComparisons.getNameTypeVersion();
- 
- 			Collections.sort(result, comparator);
  		}
- 
- 		return result;
  	}
  
--- 113,163 ----
  	}
  
! 	public void perform(ResourceRequest request) throws RuperException {
! 		ResourceResult result = performRequest(request);
  
! 		// Now what? Perform actions??
  	}
  
! 	public ResourceResult performRequest(ResourceRequest request)
  		throws RuperException {
  
! 		Logger.getLog().debug(Messages.getString("ResourceRequest", request));
  
! 		ResourceQuery query = request.getQuery();
  
! 		List wrappers = getRepositoryWrappers(query.getRepositories());
  
! 		return m_engine.query(wrappers, query);
! 	}
  
! 	public ResourceResult query(ResourceQuery query) throws RuperException {
  
! 		List wrappers = getRepositoryWrappers(query.getRepositories());
! 		return m_engine.query(wrappers, query);
! 	}
  
! 	public void copyTo(ResourceResult result, Repository targetRepository)
! 		throws RuperException {
! 		RepositoryWrapper target =
! 			new RepositoryWrapper(targetRepository, m_context);
! 		for (Iterator i = result.iterator(); i.hasNext();) {
! 			List group = (List) i.next();
  
! 			for (Iterator j = group.iterator(); j.hasNext();) {
! 				Resource resource = (Resource) j.next();
  
! 				try {
! 					target.publishResource(resource);
! 				}
! 				catch (Exception e) {
  
! 					//					(1) log (2) stach in result set error table
! 					throw new RepositoryException(
! 						targetRepository,
! 						"Failed to publish resource: " + resource,
! 						e);
  				}
  			}
  		}
  	}
  




-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.