Package org.apache.solr.common.util
Class ContentStreamBase
- java.lang.Object
-
- org.apache.solr.common.util.ContentStreamBase
-
- All Implemented Interfaces:
ContentStream
- Direct Known Subclasses:
ContentStreamBase.ByteArrayStream
,ContentStreamBase.FileStream
,ContentStreamBase.StringStream
,ContentStreamBase.URLStream
public abstract class ContentStreamBase extends Object implements ContentStream
Three concrete implementations for ContentStream - one for File/URL/String- Since:
- solr 1.2
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ContentStreamBase.ByteArrayStream
Construct aContentStream
from aFile
static class
ContentStreamBase.FileStream
Construct aContentStream
from aFile
static class
ContentStreamBase.StringStream
Construct aContentStream
from aString
static class
ContentStreamBase.URLStream
Construct aContentStream
from aURL
This uses aURLConnection
to get the content stream
-
Field Summary
Fields Modifier and Type Field Description protected String
contentType
static String
DEFAULT_CHARSET
protected String
name
protected Long
size
protected String
sourceInfo
-
Constructor Summary
Constructors Constructor Description ContentStreamBase()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected String
attemptToDetermineContentType()
static ContentStream
create(RequestWriter requestWriter, SolrRequest req)
static String
getCharsetFromContentType(String contentType)
String
getContentType()
String
getName()
Reader
getReader()
Base reader implementation.Long
getSize()
String
getSourceInfo()
void
setContentType(String contentType)
void
setName(String name)
void
setSize(Long size)
void
setSourceInfo(String sourceInfo)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.solr.common.util.ContentStream
getStream
-
-
-
-
Method Detail
-
attemptToDetermineContentType
protected String attemptToDetermineContentType()
-
getReader
public Reader getReader() throws IOException
Base reader implementation. If the contentType declares a charset use it, otherwise use "utf-8".- Specified by:
getReader
in interfaceContentStream
- Throws:
IOException
-
getContentType
public String getContentType()
- Specified by:
getContentType
in interfaceContentStream
-
setContentType
public void setContentType(String contentType)
-
getName
public String getName()
- Specified by:
getName
in interfaceContentStream
-
setName
public void setName(String name)
-
getSize
public Long getSize()
- Specified by:
getSize
in interfaceContentStream
- Returns:
- the stream size or
null
if not known
-
setSize
public void setSize(Long size)
-
getSourceInfo
public String getSourceInfo()
- Specified by:
getSourceInfo
in interfaceContentStream
-
setSourceInfo
public void setSourceInfo(String sourceInfo)
-
create
public static ContentStream create(RequestWriter requestWriter, SolrRequest req) throws IOException
- Throws:
IOException
-
-