/// <summary> /// Returns a bool stating if the write was unsuccessful. /// </summary> public virtual bool WriteNextIO() { AnvilChunkLoaderPending anvilchunkloaderpending = null; lock (Field_48450_c) { if (Field_48451_a.Count > 0) { anvilchunkloaderpending = Field_48451_a[0]; Field_48451_a.RemoveAt(0); Field_48449_b.Remove(anvilchunkloaderpending.Field_48427_a); } else { return(false); } } if (anvilchunkloaderpending != null) { try { Func_48447_a(anvilchunkloaderpending); } catch (Exception exception) { Utilities.LogException(exception); } } return(true); }
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET: //ORIGINAL LINE: private void Func_48447_a(AnvilChunkLoaderPending par1AnvilChunkLoaderPending) throws IOException private void Func_48447_a(AnvilChunkLoaderPending par1AnvilChunkLoaderPending) { Stream dataoutputstream = RegionFileCache.GetChunkOutputStream(ChunkSaveLocation, par1AnvilChunkLoaderPending.Field_48427_a.ChunkXPos, par1AnvilChunkLoaderPending.Field_48427_a.ChunkZPos); CompressedStreamTools.Write(par1AnvilChunkLoaderPending.Field_48426_b, new BinaryWriter(dataoutputstream)); dataoutputstream.Close(); }
protected virtual void Func_48446_a(ChunkCoordIntPair par1ChunkCoordIntPair, NBTTagCompound par2NBTTagCompound) { lock (Field_48450_c) { if (Field_48449_b.Contains(par1ChunkCoordIntPair)) { for (int i = 0; i < Field_48451_a.Count; i++) { if (Field_48451_a[i].Field_48427_a.Equals(par1ChunkCoordIntPair)) { Field_48451_a[i] = new AnvilChunkLoaderPending(par1ChunkCoordIntPair, par2NBTTagCompound); return; } } } Field_48451_a.Add(new AnvilChunkLoaderPending(par1ChunkCoordIntPair, par2NBTTagCompound)); Field_48449_b.Add(par1ChunkCoordIntPair); ThreadedFileIOBase.ThreadedIOInstance.QueueIO(this); return; } }