/** * Registers write future in ggfs data manager. * * @param fileInfo File info of file opened to write. * @return Future that will be completed when all ack messages are received or when write failed. */ public GridFuture<Boolean> writeStart(GridGgfsFileInfo fileInfo) { WriteCompletionFuture fut = new WriteCompletionFuture(ggfsCtx.kernalContext(), fileInfo.id()); WriteCompletionFuture oldFut = pendingWrites.putIfAbsent(fileInfo.id(), fut); assert oldFut == null : "Opened write that is being concurrently written: " + fileInfo; if (log.isDebugEnabled()) log.debug("Registered write completion future for file output stream [fileInfo=" + fileInfo + ", fut=" + fut + ']'); return fut; }
/** * Registers write future in ggfs data manager. * * @param fileInfo File info of file opened to write. * @return Future that will be completed when all ack messages are received or when write failed. */ public GridFuture<Boolean> writeStart(GridGgfsFileInfo fileInfo) { WriteCompletionFuture fut = new WriteCompletionFuture(ggfsCtx.kernalContext(), fileInfo.id()); WriteCompletionFuture oldFut = pendingWrites.putIfAbsent(fileInfo.id(), fut); assert oldFut == null : "Opened write that is being concurrently written: " + fileInfo; if (log.isDebugEnabled()) log.debug("Registered write completion future for file output stream [fileInfo=" + fileInfo + ", fut=" + fut + ']'); return fut; }