public Object Run(IClosure4 closure)
 {
     lock (this)
     {
         return closure.Run();
     }
 }
 private object AssertTakeLessThan(long time, IClosure4 runnable)
 {
     var before = Runtime.CurrentTimeMillis();
     var ret = runnable.Run();
     Assert.IsSmallerOrEqual(time, Runtime.CurrentTimeMillis() - before);
     return ret;
 }
 private object AssertTakeAtLeast(long time, IClosure4 runnable)
 {
     var before = Runtime.CurrentTimeMillis();
     var ret = runnable.Run();
     Assert.IsGreaterOrEqual(time, Runtime.CurrentTimeMillis() - before);
     return ret;
 }
 public Object Run(IClosure4 closure)
 {
     lock (this)
     {
         return(closure.Run());
     }
 }
Exemple #5
0
 private object WithLock(IClosure4 block)
 {
     if (_stream == null || _stream.IsClosed())
     {
         return(block.Run());
     }
     return(_stream.SyncExec(block));
 }
Exemple #6
0
        private object AssertTakeLessThan(long time, IClosure4 runnable)
        {
            var before = Runtime.CurrentTimeMillis();
            var ret    = runnable.Run();

            Assert.IsSmallerOrEqual(time, Runtime.CurrentTimeMillis() - before);
            return(ret);
        }
        private object AssertTakeAtLeast(long time, IClosure4 runnable)
        {
            long   before = Runtime.CurrentTimeMillis();
            object ret    = runnable.Run();

            Assert.IsGreaterOrEqual(time, Runtime.CurrentTimeMillis() - before);
            return(ret);
        }
Exemple #8
0
		public virtual object DoWithSlotIndirection(IReadBuffer buffer, ITypeHandler4 typeHandler
			, IClosure4 closure)
		{
			if (!IsIndirectedWithinSlot(typeHandler))
			{
				return closure.Run();
			}
			return DoWithSlotIndirection(buffer, closure);
		}
Exemple #9
0
 public virtual object DoWithSlotIndirection(IReadBuffer buffer, ITypeHandler4 typeHandler
                                             , IClosure4 closure)
 {
     if (!IsIndirectedWithinSlot(typeHandler))
     {
         return(closure.Run());
     }
     return(DoWithSlotIndirection(buffer, closure));
 }
Exemple #10
0
        /// <exception cref="System.IO.IOException"></exception>
        public static void AssertIndex(string fieldName, string databaseFileName, IClosure4
                                       configProvider)
        {
            ForceIndex(databaseFileName, ((IEmbeddedConfiguration)configProvider.Run()));
            var defragConfig = new DefragmentConfig(databaseFileName, DefragmentTestCaseBase
                                                    .BackupFileNameFor(databaseFileName));

            defragConfig.Db4oConfig(((IEmbeddedConfiguration)configProvider.Run()));
            Db4o.Defragment.Defragment.Defrag(defragConfig);
            IObjectContainer db = Db4oEmbedded.OpenFile(((IEmbeddedConfiguration)configProvider
                                                         .Run()), databaseFileName);
            var query = db.Query();

            query.Constrain(typeof(Data));
            query.Descend(fieldName).Constrain(Value);
            var result = query.Execute();

            Assert.AreEqual(1, result.Count);
            db.Close();
        }
Exemple #11
0
		public Object Run(IClosure4 closure4)
        {
			EnterClosure();
            try
            {
                return closure4.Run();
            }
            finally
            {
                AwakeClosure();
            }
        }
Exemple #12
0
 public Object Run(IClosure4 closure4)
 {
     EnterClosure();
     try
     {
         return(closure4.Run());
     }
     finally
     {
         AwakeClosure();
     }
 }
Exemple #13
0
 public virtual object TriggeringQueryEvents(IClosure4 closure)
 {
     TriggerQueryOnStarted();
     try
     {
         return(closure.Run());
     }
     finally
     {
         TriggerQueryOnFinished();
     }
 }
Exemple #14
0
		public virtual object With(object value, IClosure4 block)
		{
			object previous = _value.Get();
			_value.Set(value);
			try
			{
				return block.Run();
			}
			finally
			{
				_value.Set(previous);
			}
		}
Exemple #15
0
        public virtual object With(object value, IClosure4 block)
        {
            object previous = _value.Get();

            _value.Set(value);
            try
            {
                return(block.Run());
            }
            finally
            {
                _value.Set(previous);
            }
        }
Exemple #16
0
 public static bool Retry(long millisecondsTimeout, int millisecondsBetweenRetries
     , IClosure4 block)
 {
     StopWatch watch = new AutoStopWatch();
     do
     {
         if ((((bool) block.Run())))
         {
             return true;
         }
         Sleep(millisecondsBetweenRetries);
     } while (watch.Peek() < millisecondsTimeout);
     return false;
 }
Exemple #17
0
        public static bool Retry(long millisecondsTimeout, int millisecondsBetweenRetries
                                 , IClosure4 block)
        {
            StopWatch watch = new AutoStopWatch();

            do
            {
                if ((((bool)block.Run())))
                {
                    return(true);
                }
                Sleep(millisecondsBetweenRetries);
            }while (watch.Peek() < millisecondsTimeout);
            return(false);
        }
 /// <exception cref="System.IO.IOException"></exception>
 public static void AssertIndex(string fieldName, string databaseFileName, IClosure4
     configProvider)
 {
     ForceIndex(databaseFileName, ((IEmbeddedConfiguration) configProvider.Run()));
     var defragConfig = new DefragmentConfig(databaseFileName, DefragmentTestCaseBase
         .BackupFileNameFor(databaseFileName));
     defragConfig.Db4oConfig(((IEmbeddedConfiguration) configProvider.Run()));
     Db4o.Defragment.Defragment.Defrag(defragConfig);
     IObjectContainer db = Db4oEmbedded.OpenFile(((IEmbeddedConfiguration) configProvider
         .Run()), databaseFileName);
     var query = db.Query();
     query.Constrain(typeof (Data));
     query.Descend(fieldName).Constrain(Value);
     var result = query.Execute();
     Assert.AreEqual(1, result.Count);
     db.Close();
 }
Exemple #19
0
        public virtual object DoWithSlotIndirection(IReadBuffer buffer, IClosure4 closure
                                                    )
        {
            int payLoadOffset = buffer.ReadInt();

            buffer.ReadInt();
            // length, not used
            int    savedOffset = buffer.Offset();
            object res         = null;

            if (payLoadOffset != 0)
            {
                buffer.Seek(payLoadOffset);
                res = closure.Run();
            }
            buffer.Seek(savedOffset);
            return(res);
        }
Exemple #20
0
        public virtual void Run()
        {
            ITestExecutor executor = ((ITestExecutor)Environments.My(typeof(ITestExecutor)));
            IEnumerator   tests    = ((IEnumerator)_tests.Run());

            try
            {
                SuiteSetUp();
                while (tests.MoveNext())
                {
                    executor.Execute(((ITest)tests.Current));
                }
                SuiteTearDown();
            }
            catch (Exception exc)
            {
                executor.Fail(this, exc);
            }
        }
 private IFreespaceManager FreespaceManager()
 {
     return((IFreespaceManager)_freespaceManager.Run());
 }
Exemple #22
0
 private object WithLock(IClosure4 block)
 {
     if (_stream == null || _stream.IsClosed())
     {
         return block.Run();
     }
     return _stream.SyncExec(block);
 }
Exemple #23
0
		public virtual object SyncExec(IClosure4 block)
		{
			lock (_lock)
			{
				CheckClosed();
				return block.Run();
			}
		}
Exemple #24
0
 /// <summary>
 /// Can be overriden in inherited classes to inject new fixtures into
 /// the context.
 /// </summary>
 /// <remarks>
 /// Can be overriden in inherited classes to inject new fixtures into
 /// the context.
 /// </remarks>
 /// <param name="closure"></param>
 /// <returns></returns>
 protected virtual object WithContext(IClosure4 closure)
 {
     return(closure.Run());
 }
Exemple #25
0
 public virtual object TriggeringQueryEvents(IClosure4 closure)
 {
     TriggerQueryOnStarted();
     try
     {
         return closure.Run();
     }
     finally
     {
         TriggerQueryOnFinished();
     }
 }
Exemple #26
0
		public virtual object DoWithSlotIndirection(IReadBuffer buffer, IClosure4 closure
			)
		{
			int payLoadOffset = buffer.ReadInt();
			buffer.ReadInt();
			// length, not used
			int savedOffset = buffer.Offset();
			object res = null;
			if (payLoadOffset != 0)
			{
				buffer.Seek(payLoadOffset);
				res = closure.Run();
			}
			buffer.Seek(savedOffset);
			return res;
		}
		/// <summary>
		/// Can be overriden in inherited classes to inject new fixtures into
		/// the context.
		/// </summary>
		/// <remarks>
		/// Can be overriden in inherited classes to inject new fixtures into
		/// the context.
		/// </remarks>
		/// <param name="closure"></param>
		/// <returns></returns>
		protected virtual object WithContext(IClosure4 closure)
		{
			return closure.Run();
		}
Exemple #28
0
 private IIdSystem GlobalIdSystem()
 {
     return((IIdSystem)_globalIdSystem.Run());
 }