ruper2/src/java/core/org/krysalis/ruper/repository RepositoryConstants.java,1.3,1.4 DefaultRepository.java,1.10,1.11 RepositoryAttribute.java,1.5,1.6 RepositorySetSortContext.java,1.1,1.2 RepositorySet.java,1.10,1.11 RepositoryManager.java,1.9,1.10 AbstractRepository.java,1.11,1.12 DefaultRepositorySet.java,1.4,NONE

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

Modified Files:
	RepositoryConstants.java DefaultRepository.java 
	RepositoryAttribute.java RepositorySetSortContext.java 
	RepositorySet.java RepositoryManager.java 
	AbstractRepository.java 
Removed Files:
	DefaultRepositorySet.java 
Log Message:
Protocol mgr made as a handler mgr to manage the provider selection through 
the selectors.

And tested the full cycle for FileUpdater working

Index: RepositoryConstants.java
===================================================================
RCS file: /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper/repository/RepositoryConstants.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** RepositoryConstants.java	16 Sep 2003 20:40:32 -0000	1.3
--- RepositoryConstants.java	18 Sep 2003 20:15:40 -0000	1.4
***************
*** 15,20 ****
--- 15,26 ----
  	public final static String MAVEN_ID = "maven";
  
+ 	public final static String ACTIVE = "active";
  	public final static String REMOTE = "remote";
  	public final static String LOCAL = "local";
+ 
+ 	public final static String SORTED = "sorted";
+ 
+ 	public final static String TRUE = "true";
+ 	public final static String FALSE = "false";
  
  }

Index: DefaultRepository.java
===================================================================
RCS file: /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper/repository/DefaultRepository.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** DefaultRepository.java	12 Sep 2003 20:23:43 -0000	1.10
--- DefaultRepository.java	18 Sep 2003 20:15:40 -0000	1.11
***************
*** 75,80 ****
  
  	private void classInit(final boolean hierarchical) {
! 		m_hierarchical  = hierarchical;
! 		
  		setRepositoryAttribute(
  			RepositoryAttribute.HIERARCHICAL,
--- 75,80 ----
  
  	private void classInit(final boolean hierarchical) {
! 		m_hierarchical = hierarchical;
! 
  		setRepositoryAttribute(
  			RepositoryAttribute.HIERARCHICAL,
***************
*** 83,86 ****
--- 83,91 ----
  		addCapability(RepositoryCapability.PUBLISHABLE);
  		addCapability(RepositoryCapability.LISTABLE);
+ 
+ 		// make the repository active
+ 		setRepositoryAttribute(
+ 			new RepositoryAttribute(RepositoryConstants.ACTIVE),
+ 			RepositoryConstants.TRUE);
  	}
  
***************
*** 106,116 ****
  				ComparisonHelper.sortUnique(
  					resources,
! 					StandardResourceComparisons.getNameType());
! 					
  			if (!unique.isEmpty()) {
  				results = new ArrayList(unique.size());
! 				
! 				for ( Iterator i = unique.iterator(); i.hasNext(); ){
! 					results.add(((Resource)i.next()).getSpecifier());
  				}
  			}
--- 111,121 ----
  				ComparisonHelper.sortUnique(
  					resources,
! 					StandardResourceComparisons.getNameTypeComparatorSet());
! 
  			if (!unique.isEmpty()) {
  				results = new ArrayList(unique.size());
! 
! 				for (Iterator i = unique.iterator(); i.hasNext();) {
! 					results.add(((Resource) i.next()).getSpecifier());
  				}
  			}
***************
*** 139,149 ****
  			// Convert to Resources
  			// Select the right ones..
! 			results =
! 				SelectionHelper.select(
! 					getAnalyzer().determineResources(
! 						context.getProtocolManager().performList(
! 							container,
! 							selector)),
! 					selector);
  		}
  		else
--- 144,153 ----
  			// Convert to Resources
  			// Select the right ones..
! 			List resourceList =
! 				context.getProtocolManager().performList(container, selector);
! 
! 			List analyzedResourceList =
! 				getAnalyzer().determineResources(resourceList);
! 			results = SelectionHelper.select(analyzedResourceList, selector);
  		}
  		else

Index: RepositoryAttribute.java
===================================================================
RCS file: /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper/repository/RepositoryAttribute.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** RepositoryAttribute.java	12 Sep 2003 15:19:43 -0000	1.5
--- RepositoryAttribute.java	18 Sep 2003 20:15:40 -0000	1.6
***************
*** 22,31 ****
  	 */
  	public static final RepositoryAttribute ACTIVE =
! 		new RepositoryAttribute("ACTIVE");
  	/**
  	 * A is 'remote' (operations 'cost').
  	 */
  	public static final RepositoryAttribute REMOTE =
! 		new RepositoryAttribute("REMOTE");
  
  	/**
--- 22,31 ----
  	 */
  	public static final RepositoryAttribute ACTIVE =
! 		new RepositoryAttribute("active");
  	/**
  	 * A is 'remote' (operations 'cost').
  	 */
  	public static final RepositoryAttribute REMOTE =
! 		new RepositoryAttribute("remote");
  
  	/**

Index: RepositorySetSortContext.java
===================================================================
RCS file: /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper/repository/RepositorySetSortContext.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** RepositorySetSortContext.java	16 Sep 2003 20:40:32 -0000	1.1
--- RepositorySetSortContext.java	18 Sep 2003 20:15:40 -0000	1.2
***************
*** 4,7 ****
--- 4,8 ----
  package org.krysalis.ruper.repository;
  
+ import java.util.ArrayList;
  import java.util.Comparator;
  import java.util.List;
***************
*** 64,72 ****
  	 */
  	public void addRepositorySelector(Selector selector) {
  		this.m_repositorySelectors.add(selector);
  	}
  
  	public void removeRepositorySelector(Selector selector) {
! 		this.m_repositorySelectors.remove(selector);
  	}
  
--- 65,76 ----
  	 */
  	public void addRepositorySelector(Selector selector) {
+ 		if (this.m_repositorySelectors == null)
+ 			this.m_repositorySelectors = new ArrayList();
  		this.m_repositorySelectors.add(selector);
  	}
  
  	public void removeRepositorySelector(Selector selector) {
! 		if (this.m_repositorySelectors != null)
! 			this.m_repositorySelectors.remove(selector);
  	}
  
***************
*** 75,86 ****
  	 */
  	public void addRepositoryComparator(Comparator comparator) {
  		this.m_repositoryComparators.add(comparator);
  	}
  
  	public void removeRepositoryComparator(Comparator comparator) {
! 		this.m_repositoryComparators.remove(comparator);
  	}
  
! 	public static RepositorySetSortContext getRepositorySetSortContext() {
  		return getRepositorySetSortContext(RuperConstants.DEFAULT);
  	}
--- 79,93 ----
  	 */
  	public void addRepositoryComparator(Comparator comparator) {
+ 		if (this.m_repositoryComparators == null)
+ 			this.m_repositoryComparators = new ArrayList();
  		this.m_repositoryComparators.add(comparator);
  	}
  
  	public void removeRepositoryComparator(Comparator comparator) {
! 		if (this.m_repositoryComparators != null)
! 			this.m_repositoryComparators.remove(comparator);
  	}
  
! 	public static RepositorySetSortContext getDefaultRepositorySetSortContext() {
  		return getRepositorySetSortContext(RuperConstants.DEFAULT);
  	}

Index: RepositorySet.java
===================================================================
RCS file: /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper/repository/RepositorySet.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** RepositorySet.java	16 Sep 2003 20:40:32 -0000	1.10
--- RepositorySet.java	18 Sep 2003 20:15:40 -0000	1.11
***************
*** 6,9 ****
--- 6,10 ----
  
  import java.util.ArrayList;
+ import java.util.Iterator;
  
  import org.krysalis.ruper.impl.ReferenceManager;
***************
*** 37,43 ****
  	}
  
  	public RepositorySet(Repository target) {
  		this(new RepositorySetIdentifier(RuperConstants.UNNAMED));
- 		m_repositories = new ArrayList();
  		m_repositories.add(target);
  	}
--- 38,48 ----
  	}
  
+ 	public RepositorySet(String id, ArrayList list) {
+ 		this(new RepositorySetIdentifier(id));
+ 		this.m_repositories = list;
+ 	}
+ 
  	public RepositorySet(Repository target) {
  		this(new RepositorySetIdentifier(RuperConstants.UNNAMED));
  		m_repositories.add(target);
  	}
***************
*** 45,49 ****
  	public RepositorySet(String id, Repository target) {
  		this(new RepositorySetIdentifier(id));
- 		m_repositories = new ArrayList();
  		m_repositories.add(target);
  	}
--- 50,53 ----
***************
*** 71,74 ****
--- 75,87 ----
  
  	public static RepositorySet getRepositorySet(
+ 		String  identifier,
+ 		final boolean createIfRequired) {
+ 			
+ 			return getRepositorySet(new RepositorySetIdentifier(identifier),
+ 			createIfRequired);
+ 
+ 		}
+ 		
+ 	public static RepositorySet getRepositorySet(
  		RepositorySetIdentifier identifier,
  		final boolean createIfRequired) {
***************
*** 89,93 ****
  		if (createIfRequired) {
  
! 			set = new DefaultRepositorySet(identifier);
  
  			ReferenceManager.createReference(set);
--- 102,106 ----
  		if (createIfRequired) {
  
! 			set = new RepositorySet(identifier);
  
  			ReferenceManager.createReference(set);
***************
*** 136,138 ****
--- 149,161 ----
  	}
  
+ 	public String toString()
+ 	{
+ 		StringBuffer buff = new StringBuffer(this.m_identifier.getId());
+ 		
+ 		for(Iterator iter = m_repositories.iterator(); iter.hasNext();){
+ 			buff.append( ( (AbstractRepository)iter.next() ).toString() );
+ 		}
+ 		
+ 		return buff.toString();
+ 	}
  }

Index: RepositoryManager.java
===================================================================
RCS file: /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper/repository/RepositoryManager.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** RepositoryManager.java	16 Sep 2003 20:40:32 -0000	1.9
--- RepositoryManager.java	18 Sep 2003 20:15:40 -0000	1.10
***************
*** 22,27 ****
  public class RepositoryManager extends HandlerManager {
  
  	public RepositoryManager() {
! 		super();		
  		configure();
  	}
--- 22,29 ----
  public class RepositoryManager extends HandlerManager {
  
+ 	private String m_sortContextID = RuperConstants.DEFAULT;
+ 
  	public RepositoryManager() {
! 		super();
  		configure();
  	}
***************
*** 33,43 ****
  		SelectorHandlerChain selectors =
  			new SelectorHandlerChain(RuperConstants.SELECTOR);
- 		this.m_handlerChains.put(RuperConstants.SELECTOR, selectors);
- 		this.m_handlerChains.put(RuperConstants.COMPARATOR, comparators);
  
  		// first add the selectors
  		this.addHandlerChain(selectors);
  		this.addHandlerChain(comparators);
! 		
  		// set the default sort context
  		// default selectors and comparators are used
--- 35,43 ----
  		SelectorHandlerChain selectors =
  			new SelectorHandlerChain(RuperConstants.SELECTOR);
  
  		// first add the selectors
  		this.addHandlerChain(selectors);
  		this.addHandlerChain(comparators);
! 
  		// set the default sort context
  		// default selectors and comparators are used
***************
*** 45,129 ****
  	}
  
! 	public  void setDefaultRepositorySortContext() {
! 		RepositorySetSortContext repositorySetSortContext = RepositorySetSortContext.getRepositorySetSortContext();
! 		setRepositorySortContext(repositorySetSortContext);
  	}
  
! 	public  void setRepositorySortContext(RepositorySetSortContext repositorySetSortContext) {
! 		//	add the selectors to the chain
! 		HandlerChain handlerChain =
! 			(HandlerChain) m_handlerChains.get(RuperConstants.SELECTOR);
! 		handlerChain.setHandlers(repositorySetSortContext.getRepositorySelectors());
! 		// add the comparators to the chain
  		SelectorHandlerChain shandlerChain =
! 			(SelectorHandlerChain) m_handlerChains.get(
! 				RuperConstants.COMPARATOR);
! 		shandlerChain.setHandlers(repositorySetSortContext.getRepositoryComparators());
  	}
  
! 	public RepositorySet getDefaultSortedRepositorySet(){
! 		RepositorySet repositorySet = RepositorySet.getRepositorySet(
! 										new RepositorySetIdentifier(RuperConstants.DEFAULT),
! 										true);
! 		try
! 		{
  			repositorySet = getSortedRepositorySet(repositorySet);
  		}
! 		catch(RuperException exp)
! 		{
! 			Logger.getLog().error("Error in sorting the default repository set", exp);
  		}
! 		
  		return repositorySet;
  	}
! 	
! 	public RepositorySet getSortedRepositorySet(RepositorySet repositorySet,
! 	RepositorySetSortContext repositorySetSortContext) 
! 					throws RuperException {
! 		
  		setRepositorySortContext(repositorySetSortContext);
  		return getSortedRepositorySet(repositorySet);
  
  	}
! 	public RepositorySet getSortedRepositorySet(RepositorySet repositorySet) 
! 					throws RuperException {
  
  		RepositorySet selectedRepositorySet = null;
  		// pass it through the chain of handlers - select the repositories
! 		
  		// select and sort the repository set
  		List repositories = process(repositorySet.getRepositories());
! 		
! 		selectedRepositorySet = new RepositorySet((ArrayList) repositories);
  
  		return selectedRepositorySet;
  	}
  
! 	public RepositorySet performRepositoryQuery(ResourceUpdater ruper, ResourceQuery query){
! 		
  		RepositorySet repositorySet = null;
! 		
! 		try{
! 			// try to get the repository set given by the query
! 			repositorySet = query.getRepositorySet();
! 			if(repositorySet != null){
! 				// check the context
! 				RepositorySetSortContext repositoryContext = query.getRepositorySetSortContext();
! 				if(repositoryContext != null)
! 				{
  					setRepositorySortContext(repositoryContext);
  				}
  				repositorySet = getSortedRepositorySet(repositorySet);
  			}
  		}
! 		catch(RuperException exception){
! 			Logger.getLog().error("Unable to perform repository query", exception);
  		}
! 				
! 		if(repositorySet == null){
  			// if not, use the default sorted repository
  			repositorySet = ruper.getDefaultSortedRepositorySet();
  		}
! 		
  		return repositorySet;
  	}
--- 45,171 ----
  	}
  
! 	public void setDefaultRepositorySortContext() {
! 		RepositorySetSortContext repositorySetSortContext =
! 			RepositorySetSortContext.getDefaultRepositorySetSortContext();
! 		if (repositorySetSortContext != null)
! 			setRepositorySortContext(repositorySetSortContext);
  	}
  
! 	public void setRepositorySortContext(RepositorySetSortContext repositorySetSortContext) {
! 		// add the selectors to the chain
  		SelectorHandlerChain shandlerChain =
! 			(SelectorHandlerChain) m_handlerChains.get(RuperConstants.SELECTOR);
! 		shandlerChain.setHandlers(
! 			repositorySetSortContext.getRepositorySelectors());
! 
! 		//	add the comparators to the chain
! 		HandlerChain handlerChain =
! 			(HandlerChain) m_handlerChains.get(RuperConstants.COMPARATOR);
! 		handlerChain.setHandlers(
! 			repositorySetSortContext.getRepositoryComparators());
! 
! 		this.m_sortContextID = repositorySetSortContext.getIdentifier().getId();
  	}
  
! 	public RepositorySet getDefaultSortedRepositorySet() {
! 		RepositorySet repositorySet =
! 			RepositorySet.getRepositorySet(
! 				new RepositorySetIdentifier(RuperConstants.DEFAULT),
! 				true);
! 		try {
  			repositorySet = getSortedRepositorySet(repositorySet);
  		}
! 		catch (RuperException exp) {
! 			Logger.getLog().error(
! 				"Error in sorting the default repository set",
! 				exp);
  		}
! 
  		return repositorySet;
  	}
! 
! 	public RepositorySet getSortedRepositorySet(
! 		RepositorySet repositorySet,
! 		RepositorySetSortContext repositorySetSortContext)
! 		throws RuperException {
! 
  		setRepositorySortContext(repositorySetSortContext);
  		return getSortedRepositorySet(repositorySet);
  
  	}
! 	public RepositorySet getSortedRepositorySet(RepositorySet repositorySet)
! 		throws RuperException {
  
  		RepositorySet selectedRepositorySet = null;
  		// pass it through the chain of handlers - select the repositories
! 
  		// select and sort the repository set
  		List repositories = process(repositorySet.getRepositories());
! 
! 		String repositorySetID =
! 			repositorySet.getIdentifier().getId()
! 				+ "."
! 				+ this.m_sortContextID
! 				+ "."
! 				+ RepositoryConstants.SORTED;
! 
! 		selectedRepositorySet =
! 			new RepositorySet(repositorySetID, (ArrayList) repositories);
  
  		return selectedRepositorySet;
  	}
  
! 	public RepositorySet performRepositoryQuery(
! 		final ResourceUpdater ruper,
! 		final ResourceQuery query) {
! 
  		RepositorySet repositorySet = null;
! 
! 		try {
! 			// check the context
! 			RepositorySetSortContext repositoryContext =
! 				query.getRepositorySetSortContext();
! 				
! 			if (repositoryContext != null) {
! 				// if sort context is not same as the one that already exists
! 				// set it
! 				if (!this
! 					.m_sortContextID
! 					.equals(repositoryContext.getIdentifier().getId())) {
  					setRepositorySortContext(repositoryContext);
  				}
+ 			}
+ 			else {
+ 				// no sort context - set the default sort
+ 				if (!this.m_sortContextID.equals(RuperConstants.DEFAULT)) {
+ 					this.setDefaultRepositorySortContext();
+ 				}
+ 			}
+ 
+ 			// try to get the repository set given by the query
+ 			repositorySet = query.getRepositorySet();
+ 
+ 			if (repositorySet == null) {
+ 				repositorySet =
+ 					RepositorySet.getRepositorySet(
+ 						new RepositorySetIdentifier(RuperConstants.DEFAULT),
+ 						false);
+ 			}
+ 
+ 			if (repositorySet != null) {
  				repositorySet = getSortedRepositorySet(repositorySet);
  			}
  		}
! 		catch (RuperException exception) {
! 			Logger.getLog().error(
! 				"Unable to perform repository query",
! 				exception);
  		}
! 
! 		if (repositorySet == null) {
  			// if not, use the default sorted repository
  			repositorySet = ruper.getDefaultSortedRepositorySet();
  		}
! 
  		return repositorySet;
  	}

Index: AbstractRepository.java
===================================================================
RCS file: /cvsroot/metamorphosis/ruper2/src/java/core/org/krysalis/ruper/repository/AbstractRepository.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** AbstractRepository.java	12 Sep 2003 20:23:43 -0000	1.11
--- AbstractRepository.java	18 Sep 2003 20:15:40 -0000	1.12
***************
*** 34,52 ****
  
  	protected AbstractRepository(String id) {
! 		m_identifier = new RepositoryIdentifier(id);
! 		m_capabilities = new RepositoryCapabilitySet();
! 		m_attributes = new RepositoryAttributeMap();
  	}
  
  	protected AbstractRepository(String id, VirtualResourceLocator root) {
! 		m_repositoryRoot = root;
  
  		m_identifier = new RepositoryIdentifier(id);
  		m_capabilities = new RepositoryCapabilitySet();
  		m_attributes = new RepositoryAttributeMap();
! 
! 		m_analyzer = new DefaultResourceFilenameAnalyzer(root);
  	}
- 
  	/* (non-Javadoc)
  	 * @see org.krysalis.ruper.repository.Repository#getRepositoryIdentifier()
--- 34,53 ----
  
  	protected AbstractRepository(String id) {
! 		init(id);
  	}
  
  	protected AbstractRepository(String id, VirtualResourceLocator root) {
! 		setVirtualResourceLocator(root);
! 		init(id);
! 		
! 	}
! 
! 	private void init(String id){
  
  		m_identifier = new RepositoryIdentifier(id);
  		m_capabilities = new RepositoryCapabilitySet();
  		m_attributes = new RepositoryAttributeMap();
! 		
  	}
  	/* (non-Javadoc)
  	 * @see org.krysalis.ruper.repository.Repository#getRepositoryIdentifier()
***************
*** 153,162 ****
  	}
  
- 	public void setVirtualResourceLocator(String url) {
- 		m_repositoryRoot = new VirtualResourceLocator(url);
- 	}
- 
  	public void setVirtualResourceLocator(VirtualResourceLocator vrl) {
  		m_repositoryRoot = vrl;
  	}
  
--- 154,160 ----
  	}
  
  	public void setVirtualResourceLocator(VirtualResourceLocator vrl) {
  		m_repositoryRoot = vrl;
+ 		m_analyzer = new DefaultResourceFilenameAnalyzer(vrl);
  	}
  

--- DefaultRepositorySet.java DELETED ---




-------------------------------------------------------
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.