diff --git a/pom.xml b/pom.xml
index e3030786d2545b2da4339b1178b7440ba21fb635..2777d034dcaf70267af09e5a0e004c164ce0abf4 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,30 +5,40 @@
<parent>
<groupId>sc.fiji</groupId>
<artifactId>pom-bigdataviewer</artifactId>
- <version>2.2.0</version>
+ <version>4.0.1</version>
</parent>
<artifactId>bigdataviewer-server</artifactId>
- <version>2.0.1-SNAPSHOT</version>
+ <version>2.1.0-SNAPSHOT</version>
<name>BigDataServer</name>
<description>A web server for BigDataViewer datasets</description>
+ <scm>
+ <connection>scm:git:git://github.com/bigdataviewer/bigdataviewer-server</connection>
+ <developerConnection>scm:git:git@github.com:bigdataviewer/bigdataviewer-server</developerConnection>
+ <tag>HEAD</tag>
+ <url>https://github.com/bigdataviewer/bigdataviewer-server</url>
+ </scm>
+ <issueManagement>
+ <system>GitHub Issues</system>
+ <url>https://github.com/bigdataviewer/bigdataviewer-server/issues</url>
+ </issueManagement>
+ <ciManagement>
+ <system>Jenkins</system>
+ <url>http://jenkins.imagej.net/job/bigdataviewer-server/</url>
+ </ciManagement>
+
<properties>
- <scijava.jvm.version>1.7</scijava.jvm.version>
+ <enforcer.skip>true</enforcer.skip>
</properties>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <configuration>
- <source>1.7</source>
- <target>1.7</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
+ <repositories>
+ <repository>
+ <id>imagej.public</id>
+ <url>http://maven.imagej.net/content/groups/public</url>
+ </repository>
+ </repositories>
<dependencies>
<dependency>
@@ -55,29 +65,23 @@
<developer>
<id>tpietzsch</id>
<name>Tobias Pietzsch</name>
- <email>pietzsch@mpi-cbg.de</email>
- <url />
- <organization>MPI-CBG</organization>
- <organizationUrl>http://www.mpi-cbg.de/</organizationUrl>
+ <url>http://imagej.net/User:Pietzsch</url>
<roles>
- <role>architect</role>
+ <role>founder</role>
+ <role>lead</role>
<role>developer</role>
+ <role>debugger</role>
+ <role>reviewer</role>
+ <role>support</role>
+ <role>maintainer</role>
</roles>
- <timezone>+1</timezone>
</developer>
</developers>
-
- <repositories>
- <repository>
- <id>imagej.public</id>
- <url>http://maven.imagej.net/content/groups/public</url>
- </repository>
- </repositories>
-
- <scm>
- <connection>scm:git:git://github.com/tpietzsch/spimviewer</connection>
- <developerConnection>scm:git:git@github.com:tpietzsch/spimviewer</developerConnection>
- <tag>HEAD</tag>
- <url>https://github.com/tpietzsch/spimviewer</url>
- </scm>
+ <contributors>
+ <contributor>
+ <name>HongKee Moon</name>
+ <url>http://imagej.net/User:Moon</url>
+ <properties><id>hkmoon</id></properties>
+ </contributor>
+ </contributors>
</project>
diff --git a/src/main/java/bdv/server/CellHandler.java b/src/main/java/bdv/server/CellHandler.java
index 5d6712ca33e74305f8cdea685adbb3904fa3a237..1cb8682b2b339e9bfbf79896e1582f7c478cab24 100644
--- a/src/main/java/bdv/server/CellHandler.java
+++ b/src/main/java/bdv/server/CellHandler.java
@@ -14,10 +14,6 @@ import javax.imageio.ImageIO;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import mpicbg.spim.data.SpimDataException;
-import net.imglib2.img.basictypeaccess.volatiles.array.VolatileShortArray;
-import net.imglib2.realtransform.AffineTransform3D;
-
import org.eclipse.jetty.server.Request;
import org.eclipse.jetty.server.handler.ContextHandler;
import org.eclipse.jetty.util.log.Log;
@@ -27,11 +23,15 @@ import org.jdom2.input.SAXBuilder;
import org.jdom2.output.Format;
import org.jdom2.output.XMLOutputter;
+import com.google.gson.GsonBuilder;
+
import bdv.BigDataViewer;
-import bdv.img.cache.CacheHints;
-import bdv.img.cache.LoadingStrategy;
+import bdv.cache.CacheHints;
+import bdv.cache.LoadingStrategy;
import bdv.img.cache.VolatileCell;
import bdv.img.cache.VolatileGlobalCellCache;
+import bdv.img.cache.VolatileGlobalCellCache.Key;
+import bdv.img.cache.VolatileGlobalCellCache.VolatileCellLoader;
import bdv.img.hdf5.Hdf5ImageLoader;
import bdv.img.hdf5.Hdf5VolatileShortArrayLoader;
import bdv.img.remote.AffineTransform3DJsonSerializer;
@@ -41,8 +41,9 @@ import bdv.spimdata.SequenceDescriptionMinimal;
import bdv.spimdata.SpimDataMinimal;
import bdv.spimdata.XmlIoSpimDataMinimal;
import bdv.util.ThumbnailGenerator;
-
-import com.google.gson.GsonBuilder;
+import mpicbg.spim.data.SpimDataException;
+import net.imglib2.img.basictypeaccess.volatiles.array.VolatileShortArray;
+import net.imglib2.realtransform.AffineTransform3D;
public class CellHandler extends ContextHandler
{
@@ -97,7 +98,7 @@ public class CellHandler extends ContextHandler
final SequenceDescriptionMinimal seq = spimData.getSequenceDescription();
final Hdf5ImageLoader imgLoader = ( Hdf5ImageLoader ) seq.getImgLoader();
- cache = imgLoader.getCache();
+ cache = imgLoader.getCacheControl();
loader = imgLoader.getShortArrayLoader();
cacheHints = new CacheHints( LoadingStrategy.BLOCKING, 0, false );
@@ -144,7 +145,8 @@ public class CellHandler extends ContextHandler
final int timepoint = Integer.parseInt( parts[ 2 ] );
final int setup = Integer.parseInt( parts[ 3 ] );
final int level = Integer.parseInt( parts[ 4 ] );
- VolatileCell< ? > cell = cache.getGlobalIfCached( timepoint, setup, level, index, cacheHints );
+ final Key key = new VolatileGlobalCellCache.Key( timepoint, setup, level, index );
+ VolatileCell< ? > cell = cache.getLoadingVolatileCache().getIfPresent( key, cacheHints );
if ( cell == null )
{
final int[] cellDims = new int[] {
@@ -155,7 +157,7 @@ public class CellHandler extends ContextHandler
Long.parseLong( parts[ 8 ] ),
Long.parseLong( parts[ 9 ] ),
Long.parseLong( parts[ 10 ] ) };
- cell = cache.createGlobal( cellDims, cellMin, timepoint, setup, level, index, cacheHints, loader );
+ cell = cache.getLoadingVolatileCache().get( key, cacheHints, new VolatileCellLoader<>( loader, timepoint, setup, level, cellDims, cellMin ) );
}
@SuppressWarnings( "unchecked" )
diff --git a/src/main/java/bdv/server/ManagerHandler.java b/src/main/java/bdv/server/ManagerHandler.java
index de9a1d8b6bcca25c58a09bbef2690d78d2fda43c..d806e4de77aaa1e17d0da5834225d60973b58869 100644
--- a/src/main/java/bdv/server/ManagerHandler.java
+++ b/src/main/java/bdv/server/ManagerHandler.java
@@ -87,10 +87,6 @@ public class ManagerHandler extends ContextHandler
final String ds = request.getParameter( "ds" );
undeploy( ds, baseRequest, response );
}
- else
- {
- return;
- }
}
public String getByteSizeString( final long size )
diff --git a/src/main/java/bdv/util/ThumbnailGenerator.java b/src/main/java/bdv/util/ThumbnailGenerator.java
index 64c78f785e4f6761ead77c4e0ab2c9bf68041a26..92c0f322bce7e29f9406fd1d063dba49b65e25f5 100644
--- a/src/main/java/bdv/util/ThumbnailGenerator.java
+++ b/src/main/java/bdv/util/ThumbnailGenerator.java
@@ -7,16 +7,12 @@ import java.util.List;
import javax.imageio.ImageIO;
-import net.imglib2.realtransform.AffineTransform3D;
-import net.imglib2.ui.PainterThread;
-import net.imglib2.ui.RenderTarget;
-
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.input.SAXBuilder;
import bdv.BigDataViewer;
-import bdv.img.cache.Cache;
+import bdv.cache.CacheControl;
import bdv.spimdata.SpimDataMinimal;
import bdv.spimdata.XmlIoSpimDataMinimal;
import bdv.tools.InitializeViewerState;
@@ -32,6 +28,9 @@ import bdv.viewer.state.SourceGroup;
import bdv.viewer.state.SourceState;
import bdv.viewer.state.ViewerState;
import bdv.viewer.state.XmlIoViewerState;
+import net.imglib2.realtransform.AffineTransform3D;
+import net.imglib2.ui.PainterThread;
+import net.imglib2.ui.RenderTarget;
/**
* Created by moon on 2/5/15.
@@ -94,7 +93,7 @@ public class ThumbnailGenerator
}
}
final ThumbnailTarget renderTarget = new ThumbnailTarget();
- new MultiResolutionRenderer( renderTarget, new PainterThread( null ), new double[] { 1 }, 0, false, 1, null, false, AccumulateProjectorARGB.factory, new Cache.Dummy() ).paint( state );
+ new MultiResolutionRenderer( renderTarget, new PainterThread( null ), new double[] { 1 }, 0, false, 1, null, false, AccumulateProjectorARGB.factory, new CacheControl.Dummy() ).paint( state );
return renderTarget.bi;
}