@Override public Bucket createShadow() { return bucket.createShadow(); }
@Override public Bucket createShadow() { return proxy.createShadow(); }
@Override public Bucket createShadow() { Bucket newUnderlying = bucket.createShadow(); if(newUnderlying == null) return null; return new PaddedEphemerallyEncryptedBucket(this, newUnderlying); }
@Override public Bucket createShadow() { Bucket shadow = underlying.createShadow(); PaddedBucket ret = new PaddedBucket(shadow, size); ret.setReadOnly(); return ret; }
@Override public Bucket createShadow() { Bucket undershadow = underlying.createShadow(); AEADCryptBucket ret = new AEADCryptBucket(undershadow, key); ret.setReadOnly(); return ret; }
private BlockItem getBlockItem(BlockItemKey key, ClientContext context) throws InsertException { try { synchronized(this) { if(finished) return null; } if(persistent) { if(sourceData == null) { Logger.error(this, "getBlockItem(): sourceData = null", new Exception("error")); fail(new InsertException(InsertExceptionMode.INTERNAL_ERROR), context); return null; } } Bucket data = sourceData.createShadow(); FreenetURI u = uri; if(u.getKeyType().equals("CHK")) u = FreenetURI.EMPTY_CHK_URI; if(data == null) { data = context.tempBucketFactory.makeBucket(sourceData.size()); BucketTools.copy(sourceData, data); } CompatibilityMode cmode = ctx.getCompatibilityMode(); boolean pre1254 = !(cmode == CompatibilityMode.COMPAT_CURRENT || cmode.ordinal() >= CompatibilityMode.COMPAT_1255.ordinal()); return new BlockItem(key, data, isMetadata, compressionCodec, sourceLength, u, persistent, pre1254, cryptoAlgorithm, cryptoKey); } catch (IOException e) { throw new InsertException(InsertExceptionMode.BUCKET_ERROR, e, null); } }
if(shadow != null) shadow = shadow.createShadow(); statusCache.finishedDownload(get.identifier, get.hasSucceeded(), ((ClientGet) get).getDataSize(), ((ClientGet) get).getMIMEType(), failureCode, longFailMessage, shortFailMessage, shadow, download.filterData()); } else if(get instanceof ClientPutBase) {
@Override public CacheFetchResult lookup(FreenetURI key, boolean noFilter, ClientContext context, boolean mustCopy, Bucket preferred) { if(globalForeverClient == null) return null; ClientGet get = globalForeverClient.getCompletedRequest(key); if(get != null) { boolean filtered = get.filterData(); Bucket origData = get.getBucket(); Bucket newData = null; if(!mustCopy) newData = origData.createShadow(); if(newData == null) { try { if(preferred != null) newData = preferred; else newData = core.tempBucketFactory.makeBucket(origData.size()); BucketTools.copy(origData, newData); } catch (IOException e) { Logger.error(this, "Unable to copy data: "+e, e); return null; } } return new CacheFetchResult(new ClientMetadata(get.getMIMEType()), newData, filtered); } return null; }
shadow = null; } else { shadow = shadow.createShadow();