When trying to delete a granule from an ImageMosaic on a Secured GeoServer, the operation doesn't succeed returning this message: "Coverage exists, but is no structured grid coverage". The problem is that the DefaultSecurityFactory wraps the reader with a SecuredGridCoverage2DReader which implements standard GridCoverage2DReader. Granules management can only be performed on StructuredGridCoverage2DReader so the Factory should wrap that interface with a Secured*Structured*GridCoverage2DReader implementing it. When doing that, it should also take care of checking the wrapping policies and filters for operations like read, harvest, granules removal, coverage removal and so on. |