You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by cz...@apache.org on 2002/04/24 14:35:38 UTC
cvs commit: jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/impl ResourceSourceFactory.java SourceResolverImpl.java URLSource.java
cziegeler 02/04/24 05:35:37
Modified: monitor/src/java/org/apache/avalon/excalibur/monitor
SourceResource.java
sourceresolve/src/java/org/apache/excalibur/source
Source.java SourceFactory.java SourceResolver.java
sourceresolve/src/java/org/apache/excalibur/source/impl
ResourceSourceFactory.java SourceResolverImpl.java
URLSource.java
Added: sourceresolve/src/java/org/apache/excalibur/source
SourceException.java
Log:
Adding SourceException instead of ComponentException
Revision Changes Path
1.3 +17 -10 jakarta-avalon-excalibur/monitor/src/java/org/apache/avalon/excalibur/monitor/SourceResource.java
Index: SourceResource.java
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/monitor/src/java/org/apache/avalon/excalibur/monitor/SourceResource.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- SourceResource.java 21 Apr 2002 21:47:49 -0000 1.2
+++ SourceResource.java 24 Apr 2002 12:35:37 -0000 1.3
@@ -14,14 +14,15 @@
import java.io.Reader;
import java.io.Writer;
import org.apache.excalibur.source.Source;
+import org.apache.excalibur.source.SourceException;
import org.apache.excalibur.source.SourceValidity;
/**
*
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
- * @version $Id: SourceResource.java,v 1.2 2002/04/21 21:47:49 donaldp Exp $
+ * @version $Id: SourceResource.java,v 1.3 2002/04/24 12:35:37 cziegeler Exp $
*/
-public final class SourceResource
+public final class SourceResource
extends StreamResource
{
/** The wrapped source object */
@@ -70,17 +71,23 @@
/**
* Sets the resource value with an OutputStream
*/
- public InputStream getResourceAsStream()
- throws IOException
+ public InputStream getResourceAsStream()
+ throws IOException
{
- return m_source.getInputStream();
+ try {
+ return m_source.getInputStream();
+ }
+ catch (SourceException se)
+ {
+ throw new IOException("SourceException: " + se.getMessage());
+ }
}
/**
* Sets the resource value with a Writer
*/
public Reader getResourceAsReader()
- throws IOException
+ throws IOException
{
return new InputStreamReader( getResourceAsStream() );
}
@@ -88,8 +95,8 @@
/**
* Sets the resource value with an OutputStream
*/
- public OutputStream setResourceAsStream()
- throws IOException
+ public OutputStream setResourceAsStream()
+ throws IOException
{
throw new IOException( "setResourceAsStream() not supported for URLResource" );
}
@@ -97,8 +104,8 @@
/**
* Sets the resource value with a Writer
*/
- public Writer setResourceAsWriter()
- throws IOException
+ public Writer setResourceAsWriter()
+ throws IOException
{
throw new IOException( "setResourceAsWriter() not supported for URLResource" );
}
1.3 +2 -2 jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/Source.java
Index: Source.java
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/Source.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- Source.java 22 Apr 2002 09:13:55 -0000 1.2
+++ Source.java 24 Apr 2002 12:35:37 -0000 1.3
@@ -50,7 +50,7 @@
* validity object must be the same until discardValidity is called!
*
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
- * @version CVS $Revision: 1.2 $ $Date: 2002/04/22 09:13:55 $
+ * @version CVS $Revision: 1.3 $ $Date: 2002/04/24 12:35:37 $
*/
public interface Source {
@@ -61,7 +61,7 @@
* from two different invocations.
*/
InputStream getInputStream()
- throws IOException;
+ throws IOException, SourceException;
/**
* Return the unique identifer for this source
1.2 +3 -3 jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/SourceFactory.java
Index: SourceFactory.java
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/SourceFactory.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- SourceFactory.java 19 Apr 2002 09:05:37 -0000 1.1
+++ SourceFactory.java 24 Apr 2002 12:35:37 -0000 1.2
@@ -14,10 +14,10 @@
/**
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
- * @version $Id: SourceFactory.java,v 1.1 2002/04/19 09:05:37 cziegeler Exp $
+ * @version $Id: SourceFactory.java,v 1.2 2002/04/24 12:35:37 cziegeler Exp $
*/
public interface SourceFactory
- extends Component
+ extends Component
{
String ROLE = SourceFactory.class.getName();
@@ -27,6 +27,6 @@
* @param parameters This is optional.
*/
Source getSource( String location, Map parameters )
- throws MalformedURLException, IOException;
+ throws MalformedURLException, IOException, SourceException;
}
1.2 +4 -5 jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/SourceResolver.java
Index: SourceResolver.java
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/SourceResolver.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- SourceResolver.java 19 Apr 2002 09:05:37 -0000 1.1
+++ SourceResolver.java 24 Apr 2002 12:35:37 -0000 1.2
@@ -11,7 +11,6 @@
import java.net.MalformedURLException;
import java.util.Map;
import org.apache.avalon.framework.component.Component;
-import org.apache.avalon.framework.component.ComponentException;
/**
* Base interface for resolving a source by system identifiers.
@@ -30,11 +29,11 @@
* like Composable, Initializable, Disposable etc.
*
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
- * @version CVS $Revision: 1.1 $ $Date: 2002/04/19 09:05:37 $
+ * @version CVS $Revision: 1.2 $ $Date: 2002/04/24 12:35:37 $
*/
public interface SourceResolver
- extends Component
+ extends Component
{
String ROLE = SourceResolver.class.getName();
@@ -43,7 +42,7 @@
* This is a shortcut for <code>resolve(location, null, null)</code>
*/
Source resolveURI( String location )
- throws MalformedURLException, IOException, ComponentException;
+ throws MalformedURLException, IOException, SourceException;
/**
* Get a <code>Source</code> object.
@@ -59,7 +58,7 @@
Source resolveURI( String location,
String base,
Map parameters )
- throws MalformedURLException, IOException, ComponentException;
+ throws MalformedURLException, IOException, SourceException;
/**
* Releases a resolved resource
1.1 jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/SourceException.java
Index: SourceException.java
===================================================================
/*
* Copyright (C) The Apache Software Foundation. All rights reserved.
*
* This software is published under the terms of the Apache Software License
* version 1.1, a copy of which has been included with this distribution in
* the LICENSE.txt file.
*/
package org.apache.excalibur.source;
import java.io.PrintStream;
import java.io.PrintWriter;
import org.apache.avalon.framework.CascadingException;
/**
* This Exception is thrown every time there is a problem in processing
* the source.
*
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
* @version CVS $Revision: 1.1 $ $Date: 2002/04/24 12:35:37 $
*/
public class SourceException
extends CascadingException {
/**
* Construct a new <code>SourceException</code> instance.
*
* @param message The detail message for this exception.
*/
public SourceException( final String message )
{
super( message, null );
}
/**
* Construct a new <code>SourceException</code> instance.
*
* @param message The detail message for this exception.
* @param throwable the root cause of the exception
*/
public SourceException( final String message, final Throwable throwable )
{
super( message, throwable );
}
public String toString() {
StringBuffer s = new StringBuffer();
s.append(super.toString());
if(getCause()!=null) {
s.append(": ");
s.append(getCause().toString());
}
return s.toString();
}
public void printStackTrace() {
super.printStackTrace();
if(getCause()!=null)
getCause().printStackTrace();
}
public void printStackTrace( PrintStream s ) {
super.printStackTrace(s);
if(getCause()!=null)
getCause().printStackTrace(s);
}
public void printStackTrace( PrintWriter s ) {
super.printStackTrace(s);
if(getCause()!=null)
getCause().printStackTrace(s);
}
}
1.2 +2 -2 jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/impl/ResourceSourceFactory.java
Index: ResourceSourceFactory.java
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/impl/ResourceSourceFactory.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ResourceSourceFactory.java 19 Apr 2002 09:05:37 -0000 1.1
+++ ResourceSourceFactory.java 24 Apr 2002 12:35:37 -0000 1.2
@@ -17,7 +17,7 @@
/**
* A factory for the Resource protocol
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
- * @version $Id: ResourceSourceFactory.java,v 1.1 2002/04/19 09:05:37 cziegeler Exp $
+ * @version $Id: ResourceSourceFactory.java,v 1.2 2002/04/24 12:35:37 cziegeler Exp $
*/
public class ResourceSourceFactory
extends AbstractLogEnabled
@@ -29,7 +29,7 @@
* @param parameters This is optional.
*/
public Source getSource( String location, Map parameters )
- throws MalformedURLException, IOException
+ throws MalformedURLException, IOException, SourceException
{
if( this.getLogger().isDebugEnabled() )
{
1.3 +23 -12 jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/impl/SourceResolverImpl.java
Index: SourceResolverImpl.java
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/impl/SourceResolverImpl.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- SourceResolverImpl.java 24 Apr 2002 08:25:42 -0000 1.2
+++ SourceResolverImpl.java 24 Apr 2002 12:35:37 -0000 1.3
@@ -51,7 +51,7 @@
*
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
* @author <a href="mailto:bloritsch@apache.org">Berin Loritsch</a>
- * @version $Id: SourceResolverImpl.java,v 1.2 2002/04/24 08:25:42 cziegeler Exp $
+ * @version $Id: SourceResolverImpl.java,v 1.3 2002/04/24 12:35:37 cziegeler Exp $
*/
public class SourceResolverImpl
extends AbstractLogEnabled
@@ -167,7 +167,7 @@
* Get a <code>Source</code> object.
*/
public Source resolveURI( String location )
- throws MalformedURLException, IOException, ComponentException
+ throws MalformedURLException, IOException, SourceException
{
return this.resolveURI( location, null, null );
}
@@ -178,7 +178,7 @@
public Source resolveURI( String location,
String baseURI,
Map parameters )
- throws MalformedURLException, IOException, ComponentException
+ throws MalformedURLException, IOException, SourceException
{
if( this.getLogger().isDebugEnabled() )
{
@@ -265,6 +265,10 @@
factory = (SourceFactory)m_factorySelector.select( protocol );
source = factory.getSource( systemID, parameters );
}
+ catch (ComponentException ce)
+ {
+ throw new SourceException("ComponentException.", ce);
+ }
finally
{
m_factorySelector.release( factory );
@@ -294,7 +298,7 @@
}
catch (Exception ie)
{
- throw new ComponentException("Unable to create new instance of " +
+ throw new SourceException("Unable to create new instance of " +
this.m_urlSourceClass, ie);
}
}
@@ -314,7 +318,7 @@
}
catch (Exception ie)
{
- throw new ComponentException("Unable to create new instance of " +
+ throw new SourceException("Unable to create new instance of " +
this.m_urlSourceClass, ie);
}
}
@@ -323,21 +327,28 @@
{
( (LogEnabled)source ).enableLogging( getLogger() );
}
- try
+ if( source instanceof Contextualizable )
{
- if( source instanceof Contextualizable )
+ try
{
( (Contextualizable)source ).contextualize( m_context );
}
- }
- catch( ContextException ce )
- {
- throw new ComponentException( "ContextException occured during source resolving.", ce );
+ catch( ContextException ce )
+ {
+ throw new SourceException( "ContextException occured during source resolving.", ce );
+ }
}
if( source instanceof Composable )
{
- ( (Composable)source ).compose( m_manager );
+ try
+ {
+ ( (Composable)source ).compose( m_manager );
+ }
+ catch( ComponentException ce )
+ {
+ throw new SourceException( "ComponentException occured during source resolving.", ce );
+ }
}
return source;
}
1.6 +2 -19 jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/impl/URLSource.java
Index: URLSource.java
===================================================================
RCS file: /home/cvs/jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/impl/URLSource.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- URLSource.java 24 Apr 2002 08:25:42 -0000 1.5
+++ URLSource.java 24 Apr 2002 12:35:37 -0000 1.6
@@ -24,7 +24,7 @@
* Description of a source which is described by an URL.
*
* @author <a href="mailto:cziegeler@apache.org">Carsten Ziegeler</a>
- * @version CVS $Revision: 1.5 $ $Date: 2002/04/24 08:25:42 $
+ * @version CVS $Revision: 1.6 $ $Date: 2002/04/24 12:35:37 $
*/
public class URLSource
@@ -180,23 +180,6 @@
}
/**
- * Get the corresponding Resource object for monitoring.
- public Resource getResource()
- throws Exception
- {
- this.getInfos();
- if( this.isFile == true )
- {
- return new FileResource( this.systemId.substring( FILE.length() ) );
- }
- else
- {
- return new SourceResource( this );
- }
- }
- */
-
- /**
* Return an <code>InputStream</code> object to read from the source.
*
* @throws ResourceNotFoundException if file not found or
@@ -204,7 +187,7 @@
* @throws IOException if I/O error occured.
*/
public InputStream getInputStream()
- throws IOException
+ throws IOException, SourceException
{
this.getInfos();
InputStream input = null;
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>
Re: cvs commit: jakarta-avalon-excalibur/sourceresolve/src/java/org/apache/excalibur/source/impl ResourceSourceFactory.java SourceResolverImpl.java URLSource.java
Posted by Peter Donald <pe...@apache.org>.
On Wed, 24 Apr 2002 22:35, cziegeler@apache.org wrote:
> cziegeler 02/04/24 05:35:37
>
> Modified: monitor/src/java/org/apache/avalon/excalibur/monitor
> SourceResource.java
> sourceresolve/src/java/org/apache/excalibur/source
> Source.java SourceFactory.java SourceResolver.java
> sourceresolve/src/java/org/apache/excalibur/source/impl
> ResourceSourceFactory.java SourceResolverImpl.java
> URLSource.java
> Added: sourceresolve/src/java/org/apache/excalibur/source
> SourceException.java
> Log:
> Adding SourceException instead of ComponentException
yaya! ;)
--
Cheers,
Peter Donald
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>