rdf4j-postgis  Version 0.1.0.0
WKBRasterImageReader.Spi Class Reference
Inheritance diagram for WKBRasterImageReader.Spi:
Collaboration diagram for WKBRasterImageReader.Spi:

Public Member Functions

 Spi ()
 
ImageReader createReaderInstance (final Object extension) throws IOException
 
boolean canDecodeInput (Object source) throws IOException
 
String getDescription (Locale locale)
 

Constructor & Destructor Documentation

◆ Spi()

Spi ( )
101  {
102  super();
103  names = new String[] {"PostGISWKBraster"};
104  MIMETypes = new String[] {"image/x-pgraster"};
105  pluginClassName = "org.geotoolkit.coverage.wkb.WKBRasterImageReader";
106  vendorName = "Geotoolkit.org";
107  version = "";//Utilities.VERSION.toString();
108  writerSpiNames = new String[] {"PostGISWKBraster"};
109  inputTypes = new Class[0];
110  inputTypes = ArraysExt.append(inputTypes, ImageInputStream.class);
111  inputTypes = ArraysExt.append(inputTypes, File.class);
112  inputTypes = ArraysExt.append(inputTypes, URL.class);
113  inputTypes = ArraysExt.append(inputTypes, URI.class);
114  inputTypes = ArraysExt.append(inputTypes, Path.class);
115  inputTypes = ArraysExt.append(inputTypes, byte[].class);
116  suffixes = new String[0];
117  suffixes = ArraysExt.append(suffixes, "wkb");
118  }

Member Function Documentation

◆ canDecodeInput()

boolean canDecodeInput ( Object  source) throws IOException
126  {
127 
128  if (source instanceof ImageInputStream) {
129  final ImageInputStream is = (ImageInputStream) source;
130  is.mark();
131  source = new byte[5];
132  is.readFully((byte[])source);
133  is.reset();
134  }
135 
136  if (source instanceof byte[]) {
137  byte[] buffer = (byte[]) source;
138  //check endianess and version
139  boolean valid = (buffer[0] == 0 || buffer[0] == 1)
140  && buffer[1] == 0
141  && buffer[2] == 0;
142  //additional check, many files start with several 0x00, band check reduces the risk
143  //number of bands, should be between 1 and 8
144  valid &= (buffer[4] >0 && buffer[4] < 8);
145  return valid;
146  }
147 
148  return false;
149  }

◆ createReaderInstance()

ImageReader createReaderInstance ( final Object  extension) throws IOException
121  {
122  return new WKBRasterImageReader(this);
123  }
WKBRasterImageReader(ImageReaderSpi spi)
Definition: WKBRasterImageReader.java:44

References WKBRasterImageReader.WKBRasterImageReader().

◆ getDescription()

String getDescription ( Locale  locale)
152  {
153  return "Postgis WKB Raster reader.";
154  }