how is this class (WebExternalResourceStream.java) different to:
UrlResourceStream ??
and how is WebExternalResourceRequestTarget different to
ResourceStreamRequestTarget ? (besides that WebExternal has a direct url
constructor)
which we also could add just fine besides:
public ResourceStreamRequestTarget(IResourceStream resourceStream)
{
this.resourceStream = resourceStream;
}
johan
On 4/15/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
Author: jbq
Date: Sat Apr 14 15:49:47 2007
New Revision: 528885
URL: http://svn.apache.org/viewvc?view=rev&rev=528885
Log:
An IResourceStream that reads data from a file in the web application
Added:
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java
(with props)
Added: incubator/wicket/branches/wicket-1.x/jdk-1.4
/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java
URL:
http://svn.apache.org/viewvc/incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java?view=auto&rev=528885
==============================================================================
---
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java
(added)
+++
incubator/wicket/branches/wicket-1.x/jdk-1.4/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java
Sat Apr 14 15:49:47 2007
@@ -0,0 +1,105 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version
2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.util.resource;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import javax.servlet.ServletContext;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.wicket.RequestCycle;
+import org.apache.wicket.WicketRuntimeException;
+import org.apache.wicket.protocol.http.WebApplication;
+import org.apache.wicket.util.time.Time;
+
+import sun.reflect.generics.reflectiveObjects.NotImplementedException;
+
+
+/**
+ * An [EMAIL PROTECTED] IResourceStream} that reads data from a file in the web
application
+ *
+ * @author <a href="mailto:[EMAIL PROTECTED]">Jean-Baptiste Quenot</a>
+ */
+public class WebExternalResourceStream extends AbstractResourceStream
+{
+ InputStream in;
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+
+ /** log. */
+ private static final Log log = LogFactory.getLog(
WebExternalResourceStream.class);
+
+ /** the relative url of the external resource. */
+ private final String url;
+
+ /**
+ * Construct.
+ *
+ * @param url
+ * the relative url of the external resource
+ */
+ public WebExternalResourceStream(String url)
+ {
+ if (url == null)
+ {
+ throw new IllegalArgumentException("Argument url
must be not null");
+ }
+
+ this.url = url;
+ }
+
+ /**
+ * Not implemented, throws [EMAIL PROTECTED] NotImplementedException}
+ * @see org.apache.wicket.util.resource.IResourceStream#length()
+ */
+ public long length()
+ {
+ throw new NotImplementedException();
+ }
+
+ public void close() throws IOException
+ {
+ in.close();
+ }
+
+ public Time lastModifiedTime()
+ {
+ return null;
+ }
+
+ public String getContentType()
+ {
+ return null;
+ }
+
+ public InputStream getInputStream() throws
ResourceStreamNotFoundException
+ {
+ final ServletContext context =
((WebApplication)RequestCycle.get().getApplication())
+ .getServletContext();
+
+ in = context.getResourceAsStream(url);
+ if (in == null)
+ {
+ throw new WicketRuntimeException("the requested
resource was not found");
+ }
+ return in;
+ }
+}
Propchange: incubator/wicket/branches/wicket-1.x/jdk-1.4
/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/wicket/branches/wicket-1.x/jdk-1.4
/wicket/src/main/java/org/apache/wicket/util/resource/WebExternalResourceStream.java
------------------------------------------------------------------------------
svn:keywords = Id