예제 #1
0
 public override void GoToPosition(long position)
 {
     try
     {
         if (position < 0)
         {
             throw new NeoDatis.Odb.ODBRuntimeException(NeoDatis.Odb.Core.NeoDatisError.NegativePosition
                                                        .AddParameter(position));
         }
         fileWriter.Seek(position);
     }
     catch (System.IO.IOException e)
     {
         long l = -1;
         try
         {
             l = fileWriter.Length();
         }
         catch (System.IO.IOException)
         {
         }
         throw new NeoDatis.Odb.ODBRuntimeException(NeoDatis.Odb.Core.NeoDatisError.GoToPosition
                                                    .AddParameter(position).AddParameter(l), e);
     }
 }
예제 #2
0
 public virtual void TestOdbFileIo()
 {
     NeoDatis.Tool.Wrappers.IO.OdbFileIO fileIO = new NeoDatis.Tool.Wrappers.IO.OdbFileIO
                                                      (NeoDatis.Odb.Test.ODBTest.Directory + "testLock1", true, null);
     fileIO.Seek(1024);
     fileIO.Write((byte)10);
     fileIO.LockFile();
     AssertEquals(true, fileIO.IsLocked());
     fileIO.Close();
 }
예제 #3
0
		/// <summary>Simple lock</summary>
		/// <exception cref="System.IO.IOException">System.IO.IOException</exception>
		public virtual void TestOdbFileIo()
		{
			NeoDatis.Tool.Wrappers.IO.OdbFileIO fileIO = new NeoDatis.Tool.Wrappers.IO.OdbFileIO
				(NeoDatis.Odb.Test.ODBTest.Directory + "testLock1", true, null);
			fileIO.Seek(1024);
			fileIO.Write((byte)10);
			fileIO.LockFile();
			AssertEquals(true, fileIO.IsLocked());
			fileIO.Close();
		}