Here are the examples of the csharp api System.Action.Invoke(object) taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.
784 Examples
19
View Source File : DelegateCommand.cs
License : MIT License
Project Creator : 944095635
License : MIT License
Project Creator : 944095635
public void Execute(object parameter)
{
if (executeAction == null)
{
return;
}
executeAction(parameter);
}
19
View Source File : ByteBuffer.cs
License : MIT License
Project Creator : a1q123456
License : MIT License
Project Creator : a1q123456
public void OnCompleted(Action<object> continuation, object state, short token, ValueTaskSourceOnCompletedFlags flags)
{
if ((flags & ValueTaskSourceOnCompletedFlags.FlowExecutionContext) != 0)
{
this.executionContext = ExecutionContext.Capture();
}
if ((flags & ValueTaskSourceOnCompletedFlags.UseSchedulingContext) != 0)
{
SynchronizationContext sc = SynchronizationContext.Current;
if (sc != null && sc.GetType() != typeof(SynchronizationContext))
{
this.scheduler = sc;
}
else
{
TaskScheduler ts = TaskScheduler.Current;
if (ts != TaskScheduler.Default)
{
this.scheduler = ts;
}
}
}
// Remember current state
this.state = state;
// Remember continuation to be executed on completed (if not already completed, in case of which
// continuation will be set to CallbackCompleted)
var previousContinuation = Interlocked.CompareExchange(ref this.continuation, continuation, null);
if (previousContinuation != null)
{
if (!ReferenceEquals(previousContinuation, CallbackCompleted))
{
throw new InvalidOperationException();
}
// Lost the race condition and the operation has now already completed.
// We need to invoke the continuation, but it must be asynchronously to
// avoid a stack dive. However, since all of the queueing mechanisms flow
// ExecutionContext, and since we're still in the same context where we
// captured it, we can just ignore the one we captured.
executionContext = null;
this.state = null; // we have the state in "state"; no need for the one in UserToken
InvokeContinuation(continuation, state, forceAsync: true);
}
cb.Add(() => continuation(state));
}
19
View Source File : ByteBuffer.cs
License : MIT License
Project Creator : a1q123456
License : MIT License
Project Creator : a1q123456
private void InvokeContinuation(Action<object> continuation, object state, bool forceAsync)
{
if (continuation == null)
return;
object scheduler = this.scheduler;
this.scheduler = null;
if (scheduler != null)
{
if (scheduler is SynchronizationContext sc)
{
sc.Post(s =>
{
var t = (Tuple<Action<object>, object>)s;
t.Item1(t.Item2);
}, Tuple.Create(continuation, state));
}
else
{
Debug.replacedert(scheduler is TaskScheduler, $"Expected TaskScheduler, got {scheduler}");
Task.Factory.StartNew(continuation, state, CancellationToken.None, TaskCreationOptions.DenyChildAttach, (TaskScheduler)scheduler);
}
}
else if (forceAsync)
{
ThreadPool.QueueUserWorkItem(continuation, state, preferLocal: true);
}
else
{
continuation(state);
}
}
19
View Source File : Amf3Reader.cs
License : MIT License
Project Creator : a1q123456
License : MIT License
Project Creator : a1q123456
public bool TryGetVectorObject(Span<byte> buffer, out object value, out int consumed)
{
value = default;
consumed = default;
if (!DataIsType(buffer, Amf3Type.VectorObject))
{
return false;
}
buffer = buffer.Slice(Amf3CommonValues.MARKER_LENGTH);
int arrayConsumed = 0;
if (!ReadVectorHeader(ref buffer, ref value, ref arrayConsumed, out var itemCount, out var isFixedSize, out var isRef))
{
return false;
}
if (isRef)
{
consumed = arrayConsumed;
return true;
}
if (!ReadVectorTypeName(ref buffer, out var typeName, out var typeNameConsumed))
{
return false;
}
var arrayBodyBuffer = buffer;
object resultVector = null;
Type elementType = null;
Action<object> addAction = null;
if (typeName == "*")
{
elementType = typeof(object);
var v = new Vector<object>();
_objectReferenceTable.Add(v);
v.IsFixedSize = isFixedSize;
resultVector = v;
addAction = v.Add;
}
else
{
if (!_registeredTypedObejectStates.TryGetValue(typeName, out var state))
{
return false;
}
elementType = state.Type;
var vectorType = typeof(Vector<>).MakeGenericType(elementType);
resultVector = Activator.CreateInstance(vectorType);
_objectReferenceTable.Add(resultVector);
vectorType.GetProperty("IsFixedSize").SetValue(resultVector, isFixedSize);
var addMethod = vectorType.GetMethod("Add");
addAction = o => addMethod.Invoke(resultVector, new object[] { o });
}
for (int i = 0; i < itemCount; i++)
{
if (!TryGetValue(arrayBodyBuffer, out var item, out var itemConsumed))
{
return false;
}
addAction(item);
arrayBodyBuffer = arrayBodyBuffer.Slice(itemConsumed);
arrayConsumed += itemConsumed;
}
value = resultVector;
consumed = typeNameConsumed + arrayConsumed;
return true;
}
19
View Source File : SoundEmitter.cs
License : MIT License
Project Creator : absurd-joy
License : MIT License
Project Creator : absurd-joy
public void Stop() {
// overrides everything
state = FadeState.Null;
StopAllCoroutines();
if ( audioSource != null ) {
audioSource.Stop();
}
if ( onFinished != null ) {
onFinished();
onFinished = null;
}
if ( onFinishedObject != null ) {
onFinishedObject( onFinishedParam );
onFinishedObject = null;
}
if ( playingSoundGroup != null ) {
playingSoundGroup.DecrementPlayCount();
playingSoundGroup = null;
}
}
19
View Source File : Command.cs
License : GNU General Public License v3.0
Project Creator : Acumatica
License : GNU General Public License v3.0
Project Creator : Acumatica
public void Execute(object parameter) => _actionToExecute(parameter);
19
View Source File : RelayCommand.cs
License : BSD 2-Clause "Simplified" License
Project Creator : adospace
License : BSD 2-Clause "Simplified" License
Project Creator : adospace
public void Execute(object parameter)
{
_execute(parameter);
}
19
View Source File : AduContactItem.cs
License : GNU General Public License v3.0
Project Creator : aduskin
License : GNU General Public License v3.0
Project Creator : aduskin
protected override void OnSelected(RoutedEventArgs e)
{
base.OnSelected(e);
ReadAction?.Invoke(Content);
}
19
View Source File : ThreadTaskManager.cs
License : The Unlicense
Project Creator : aeroson
License : The Unlicense
Project Creator : aeroson
private void ThreadExecutionLoop()
{
//Perform any initialization requested.
if (threadStart != null)
threadStart();
TaskEntry task;
while (true)
{
resetEvent.WaitOne();
while (true)
{
if (!taskData.TryDequeueFirst(out task))
{
bool gotSomething = false;
for (int i = 1; i < manager.workers.Count; i++)
{
if (TrySteal((index + i) % manager.workers.Count, out task))
{
gotSomething = true;
break;
}
}
if (!gotSomething)
break; //Nothing to steal and I'm broke! Guess I'll mosey on out
}
try
{
if (task.Task != null)
task.Task(task.Info);
if (Interlocked.Decrement(ref manager.tasksRemaining) == 0)
{
manager.allThreadsIdleNotifier.Set();
}
if (task.Task == null)
return;
}
catch (ArithmeticException arithmeticException)
{
throw new ArithmeticException(
"Some internal mulreplacedhreaded arithmetic has encountered an invalid state. Check for invalid enreplacedy momentums, velocities, and positions; propagating NaN's will generally trigger this exception in the getExtremePoint function.",
arithmeticException);
}
}
}
}
19
View Source File : SimpleLooper.cs
License : The Unlicense
Project Creator : aeroson
License : The Unlicense
Project Creator : aeroson
private void ThreadExecutionLoop()
{
//Perform any initialization requested.
if (threadStart != null)
threadStart(initializationInformation);
object information = null;
while (true)
{
Action<object> task = null;
lock (taskQueue)
{
if (taskQueue.Count > 0)
{
task = taskQueue.Dequeue();
if (task == null)
{
Dispose();
return;
}
information = taskInformationQueue.Dequeue();
}
}
if (task != null)
{
//Perform the task!
try
{
task(information);
}
catch (ArithmeticException arithmeticException)
{
throw new ArithmeticException(
"Some internal mulreplacedhreaded arithmetic has encountered an invalid state. Check for invalid enreplacedy momentums, velocities, and positions; propagating NaN's will generally trigger this exception in the getExtremePoint function.",
arithmeticException);
}
if (Interlocked.Decrement(ref manager.tasksRemaining) == 0)
{
manager.allThreadsIdleNotifier.Set();
resetEvent.WaitOne();
}
}
else
resetEvent.WaitOne();
}
}
19
View Source File : CollectionEx.cs
License : Mozilla Public License 2.0
Project Creator : agebullhu
License : Mozilla Public License 2.0
Project Creator : agebullhu
public static void ForEach(this IEnumerable em, Action<object> action, bool keepNull = true)
{
if (em == null)
return;
if (keepNull)
{
foreach (var t in em)
{
if (!Equals(t, null))
action(t);
}
}
else
{
foreach (var t in em)
{
action(t);
}
}
}
19
View Source File : CommandItem.cs
License : Mozilla Public License 2.0
Project Creator : agebullhu
License : Mozilla Public License 2.0
Project Creator : agebullhu
void DoAction(object arg)
{
if (DoConfirm && MessageBox.Show(ConfirmMessage ?? $"ȷ��ִ�С�{Caption ?? Name}��������?", "����༭", MessageBoxButton.YesNo) != MessageBoxResult.Yes)
{
return;
}
if (OnPrepare == null || OnPrepare(this))
Action?.Invoke(arg);
}
19
View Source File : CommandItem.cs
License : Mozilla Public License 2.0
Project Creator : agebullhu
License : Mozilla Public License 2.0
Project Creator : agebullhu
public override void Execute(object arg)
{
Action?.Invoke(arg);
}
19
View Source File : BaseCommand.cs
License : MIT License
Project Creator : aimore
License : MIT License
Project Creator : aimore
public void Execute(object parameter)
{
var nowTime = DateTime.UtcNow;
if (_actionFrequency == TimeSpan.Zero
|| Math.Abs((nowTime - _lastActionTime).TotalMilliseconds) >= _actionFrequency.TotalMilliseconds)
{
_lastActionTime = nowTime;
try
{
_action.Invoke(parameter);
}
catch (Exception ex)
{
_onExceptionAction?.Invoke(ex);
if (_shouldSuppressExceptions)
{
return;
}
throw ex;
}
}
}
19
View Source File : BaseViewModel.cs
License : MIT License
Project Creator : aimore
License : MIT License
Project Creator : aimore
protected ICommand RegCmd(Action<object> action, TimeSpan? actionFrequency = null, bool shouldSuppressExceptions = false, Action<Exception> onExceptionAction = null, Func<bool> canExecute = null, [CallerMemberName] string key = null)
=> RegCmd(new BaseCommand(p => action?.Invoke(p), actionFrequency, shouldSuppressExceptions, onExceptionAction, canExecute));
19
View Source File : PeriodTask.cs
License : GNU General Public License v3.0
Project Creator : aiportal
License : GNU General Public License v3.0
Project Creator : aiportal
private void ExecuteTask(Task task)
{
System.Diagnostics.Debug.replacedert(task != null);
try
{
task.Action(task.Action.Target);
task.LastEndTime = DateTime.Now;
}
catch (Exception ex)
{
TraceLogger.Instance.WriteException(ex);
if (OnException != null)
{
try
{
OnException(this, new TaskExceptionArgs() { TaskName = task.Name, Target = task.Action.Target, Exception = ex });
}
catch (Exception) { }
}
}
}
19
View Source File : PeriodTask.cs
License : GNU General Public License v3.0
Project Creator : aiportal
License : GNU General Public License v3.0
Project Creator : aiportal
private void ExecuteTask(Task task, object param)
{
Debug.replacedert(task != null);
try
{
task.Action(param);
}
catch (Exception ex)
{
TraceLog.WriteException(ex);
if (OnException != null)
{
try { OnException(this, new TaskExceptionArgs(task.Name, param, ex)); }
catch (Exception) { }
}
}
finally
{
task.LastEndTime = DateTime.Now;
}
}
19
View Source File : BaseCommand.cs
License : MIT License
Project Creator : aishang2015
License : MIT License
Project Creator : aishang2015
public void Execute(object parameter)
{
if (_execute != null && CanExecute(parameter))
{
_execute(parameter);
}
}
19
View Source File : KafkaConsumerActor.cs
License : Apache License 2.0
Project Creator : akkadotnet
License : Apache License 2.0
Project Creator : akkadotnet
private void Commit(IImmutableSet<TopicParreplacedionOffset> commitMap, Action<object> sendReply)
{
try
{
_commitRefreshing.UpdateRefreshDeadlines(commitMap.Select(tp => tp.TopicParreplacedion).ToImmutableHashSet());
var watch = Stopwatch.StartNew();
_consumer.Commit(commitMap);
watch.Stop();
if (watch.Elapsed >= _settings.CommitTimeWarning)
_log.Warning($"Kafka commit took longer than `commit-time-warning`: {watch.ElapsedMilliseconds} ms");
Self.Tell(new KafkaConsumerActorMetadata.Internal.Committed(commitMap));
sendReply(Akka.Done.Instance);
}
catch (Exception ex)
{
sendReply(new Status.Failure(ex));
}
// When many requestors, e.g. many parreplacedions with committableParreplacedionedSource the
// performance is much by collecting more requests/commits before performing the poll.
// That is done by sending a message to self, and thereby collect pending messages in mailbox.
if (_requestors.Count == 1)
{
Poll();
}
else if (!_delayedPoolInFlight)
{
_delayedPoolInFlight = true;
Self.Tell(_delayedPollMessage);
}
}
19
View Source File : FieldFactory.cs
License : MIT License
Project Creator : alelievr
License : MIT License
Project Creator : alelievr
public static INotifyValueChanged< T > CreateFieldSpecific< T >(T value, Action< object > onValueChanged, string label)
{
var fieldDrawer = CreateField< T >(value, label);
if (fieldDrawer == null)
return null;
fieldDrawer.value = value;
fieldDrawer.RegisterValueChangedCallback((e) => {
onValueChanged(e.newValue);
});
return fieldDrawer as INotifyValueChanged< T >;
}
19
View Source File : FieldFactory.cs
License : MIT License
Project Creator : alelievr
License : MIT License
Project Creator : alelievr
public static VisualElement CreateField(Type fieldType, object value, Action< object > onValueChanged, string label)
{
if (typeof(Enum).IsreplacedignableFrom(fieldType))
fieldType = typeof(Enum);
VisualElement field = null;
// Handle special cases here
if (fieldType == typeof(LayerMask))
{
// LayerMasks inherit from INotifyValueChanged<int> instead of INotifyValueChanged<LayerMask>
// so we can't register it inside our factory system :(
var layerField = new LayerMaskField(label, ((LayerMask)value).value);
layerField.RegisterValueChangedCallback(e => {
onValueChanged(new LayerMask{ value = e.newValue});
});
field = layerField;
}
else
{
try
{
var createFieldSpecificMethod = createFieldMethod.MakeGenericMethod(fieldType);
try
{
field = createFieldSpecificMethod.Invoke(null, new object[]{value, onValueChanged, label}) as VisualElement;
} catch {}
// handle the Object field case
if (field == null && (value == null || value is UnityEngine.Object))
{
createFieldSpecificMethod = createFieldMethod.MakeGenericMethod(typeof(UnityEngine.Object));
field = createFieldSpecificMethod.Invoke(null, new object[]{value, onValueChanged, label}) as VisualElement;
if (field is ObjectField objField)
{
objField.objectType = fieldType;
objField.value = value as UnityEngine.Object;
}
}
}
catch (Exception e)
{
Debug.LogError(e);
}
}
return field;
}
19
View Source File : ExposedParameterFieldFactory.cs
License : MIT License
Project Creator : alelievr
License : MIT License
Project Creator : alelievr
public VisualElement GetParameterValueField(ExposedParameter parameter, Action<object> valueChangedCallback)
{
serializedObject.Update();
int propIndex = FindPropertyIndex(parameter);
var field = new PropertyField(serializedParameters.GetArrayElementAtIndex(propIndex));
field.Bind(serializedObject);
VisualElement view = new VisualElement();
view.Add(field);
oldParameterValues[parameter] = parameter.value;
view.Add(new IMGUIContainer(() =>
{
if (oldParameterValues.TryGetValue(parameter, out var value))
{
if (parameter.value != null && !parameter.value.Equals(value))
valueChangedCallback(parameter.value);
}
oldParameterValues[parameter] = parameter.value;
}));
// Disallow picking scene objects when the graph is not linked to a scene
if (!this.graph.IsLinkedToScene())
{
var objectField = view.Q<ObjectField>();
if (objectField != null)
objectField.allowSceneObjects = false;
}
return view;
}
19
View Source File : ExposedParameterFieldFactory.cs
License : MIT License
Project Creator : alelievr
License : MIT License
Project Creator : alelievr
public VisualElement GetParameterSettingsField(ExposedParameter parameter, Action<object> valueChangedCallback)
{
serializedObject.Update();
int propIndex = FindPropertyIndex(parameter);
var serializedParameter = serializedParameters.GetArrayElementAtIndex(propIndex);
serializedParameter.managedReferenceValue = exposedParameterObject.parameters[propIndex];
var serializedSettings = serializedParameter.FindPropertyRelative(nameof(ExposedParameter.settings));
serializedSettings.managedReferenceValue = exposedParameterObject.parameters[propIndex].settings;
var settingsField = new PropertyField(serializedSettings);
settingsField.Bind(serializedObject);
VisualElement view = new VisualElement();
view.Add(settingsField);
// TODO: see if we can replace this with an event
oldParameterSettings[parameter] = parameter.settings;
view.Add(new IMGUIContainer(() =>
{
if (oldParameterSettings.TryGetValue(parameter, out var settings))
{
if (!settings.Equals(parameter.settings))
valueChangedCallback(parameter.settings);
}
oldParameterSettings[parameter] = parameter.settings;
}));
return view;
}
19
View Source File : DelayedChanges.cs
License : MIT License
Project Creator : alelievr
License : MIT License
Project Creator : alelievr
public void Update()
{
int i = 0;
foreach (var valKP in values)
{
var cd = valKP.Value;
if (cd.callback != null && !cd.called && GetTime() - cd.lastUpdate > delayedTime / 1000)
{
cd.called = true;
cd.callback(cd.value);
}
i++;
}
}
19
View Source File : AggregateRoot.cs
License : MIT License
Project Creator : alesimoes
License : MIT License
Project Creator : alesimoes
public void Raise(DomainEvent domainEvent)
{
handlers[domainEvent.GetType()](domainEvent);
domainEvents.Add(domainEvent);
}
19
View Source File : AggregateRoot.cs
License : MIT License
Project Creator : alesimoes
License : MIT License
Project Creator : alesimoes
public void Apply(DomainEvent domainEvent)
{
handlers[domainEvent.GetType()](domainEvent);
}
19
View Source File : EventRouter.cs
License : Apache License 2.0
Project Creator : alexeyzimarev
License : Apache License 2.0
Project Creator : alexeyzimarev
public void Route(object @event)
{
if (@event == null) throw new ArgumentNullException(nameof(@event));
Action<object> handler;
if (_handlers.TryGetValue(@event.GetType(), out handler))
{
handler(@event);
}
}
19
View Source File : DropDownButton.xaml.cs
License : MIT License
Project Creator : alexleen
License : MIT License
Project Creator : alexleen
private void AddAppenderItemOnClick(object sender, MouseButtonEventArgs e)
{
object dataContext = ((FrameworkElement)sender).DataContext;
ItemClick?.Invoke(dataContext);
Command?.Execute(dataContext);
}
19
View Source File : Command.cs
License : MIT License
Project Creator : alexleen
License : MIT License
Project Creator : alexleen
public void Execute(object parameter)
{
if (mExecuteWithParam != null)
{
mExecuteWithParam(parameter);
}
else
{
mExecute?.Invoke();
}
}
19
View Source File : ParserResultExtensions.cs
License : MIT License
Project Creator : allisterb
License : MIT License
Project Creator : allisterb
public static ParserResult<object> WithParsed(this ParserResult<object> result, Type t, Action<object> action)
{
Parsed<object> parsed = result as Parsed<object>;
if (parsed != null)
{
if (parsed.Value.GetType() == t)
{
action(parsed.Value);
}
}
return result;
}
19
View Source File : Property.cs
License : MIT License
Project Creator : Alprog
License : MIT License
Project Creator : Alprog
public Value SetValue(Value value, bool fakeExecution)
{
if (!CommandLine.EnsureType(value, PropertyType))
{
var format = "replacedignment expects {0} got {1}";
var message = String.Format(format, PropertyType.Name, value.Type.Name);
throw new TokenException(message, Token);
}
if (!fakeExecution)
{
Setter(value.Get());
}
return value;
}
19
View Source File : ServerForm.cs
License : MIT License
Project Creator : AmazingDM
License : MIT License
Project Creator : AmazingDM
private void ControlButton_Click(object sender, EventArgs e)
{
Utils.Utils.Componenreplacederator(this, component => Utils.Utils.ChangeControlForeColor(component, Color.Black));
var flag = true;
foreach (var pair in _checkActions.Where(pair => !pair.Value.Invoke(pair.Key.Text)))
{
Utils.Utils.ChangeControlForeColor(pair.Key, Color.Red);
flag = false;
}
if (!flag)
{
return;
}
foreach (var pair in _saveActions)
{
switch (pair.Key)
{
case CheckBox c:
pair.Value.Invoke(c.Checked);
break;
default:
pair.Value.Invoke(pair.Key.Text);
break;
}
}
if (Global.Settings.Server.IndexOf(Server) == -1)
Global.Settings.Server.Add(Server);
MessageBoxX.Show(i18N.Translate("Saved"));
Close();
}
19
View Source File : Command.cs
License : GNU General Public License v3.0
Project Creator : AndreiFedarets
License : GNU General Public License v3.0
Project Creator : AndreiFedarets
public void Execute(object parameter)
{
_executeFunc(parameter);
}
19
View Source File : SwipeActionContextMenuView.cs
License : MIT License
Project Creator : AndreiMisiukevich
License : MIT License
Project Creator : AndreiMisiukevich
private void OnContextMenuOpened(BaseContextMenuView menuView)
{
Device.BeginInvokeOnMainThread(() =>
{
if (ContextMenu.IsAutoCloseEnabled)
{
ContextMenu.ForceClose();
}
Moved?.Invoke(BindingContext);
MovedCommand?.Execute(BindingContext);
});
}
19
View Source File : RelayParameterizedCommand.cs
License : MIT License
Project Creator : angelsix
License : MIT License
Project Creator : angelsix
public void Execute(object parameter)
{
mAction(parameter);
}
19
View Source File : Dispatcher.cs
License : GNU Lesser General Public License v3.0
Project Creator : angturil
License : GNU Lesser General Public License v3.0
Project Creator : angturil
public static void RunAsync(Action<object> action, object state)
{
ThreadPool.QueueUserWorkItem(o => action(o), state);
}
19
View Source File : TypeSwitch.cs
License : Apache License 2.0
Project Creator : AntoineCharton
License : Apache License 2.0
Project Creator : AntoineCharton
public static void Do(object source, params CaseInfo[] cases)
{
var type = source.GetType();
foreach (var entry in cases)
{
if (entry.IsDefault || entry.Target.IsreplacedignableFrom(type))
{
entry.Action(source);
break;
}
}
}
19
View Source File : Command.cs
License : GNU General Public License v3.0
Project Creator : AnyStatus
License : GNU General Public License v3.0
Project Creator : AnyStatus
public void Execute(object parameter) => _execute(parameter);
19
View Source File : TestAmqpPeer.cs
License : Apache License 2.0
Project Creator : apache
License : Apache License 2.0
Project Creator : apache
public void ExpectSenderAttach(Action<object> sourceMatcher,
Action<object> targetMatcher,
bool refuseLink = false,
uint creditAmount = 100,
bool senderSettled = false,
Error error = null)
{
var attachMatcher = new FrameMatcher<Attach>()
.Withreplacedertion(attach => replacedert.IsNotNull(attach.LinkName))
.Withreplacedertion(attach => replacedert.AreEqual(attach.Role, Role.SENDER))
.Withreplacedertion(attach => replacedert.AreEqual(senderSettled ? SenderSettleMode.Settled : SenderSettleMode.Unsettled, attach.SndSettleMode))
.Withreplacedertion(attach => replacedert.AreEqual(attach.RcvSettleMode, ReceiverSettleMode.First))
.Withreplacedertion(attach => sourceMatcher(attach.Source))
.Withreplacedertion(attach => targetMatcher(attach.Target))
.WithOnComplete(context =>
{
var attach = new Attach()
{
Role = Role.RECEIVER,
OfferedCapabilities = null,
SndSettleMode = senderSettled ? SenderSettleMode.Settled : SenderSettleMode.Unsettled,
RcvSettleMode = ReceiverSettleMode.First,
Handle = context.Command.Handle,
LinkName = context.Command.LinkName,
Source = context.Command.Source
};
if (refuseLink)
attach.Target = null;
else
attach.Target = context.Command.Target;
lastInitiatedLinkHandle = context.Command.Handle;
if (context.Command.Target is Coordinator)
{
lastInitiatedCoordinatorLinkHandle = context.Command.Handle;
}
context.SendCommand(attach);
if (refuseLink)
{
var detach = new Detach { Closed = true, Handle = context.Command.Handle };
if (error != null)
{
detach.Error = error;
}
context.SendCommand(detach);
}
else
{
var flow = new Flow
{
NextIncomingId = 1,
IncomingWindow = 2048,
NextOutgoingId = 1,
OutgoingWindow = 2024,
LinkCredit = creditAmount,
Handle = context.Command.Handle,
DeliveryCount = context.Command.InitialDeliveryCount,
};
context.SendCommand(flow);
}
});
AddMatcher(attachMatcher);
}
19
View Source File : CustomField.cs
License : GNU Lesser General Public License v3.0
Project Creator : ApexGameTools
License : GNU Lesser General Public License v3.0
Project Creator : ApexGameTools
public void RenderField(AIInspectorState state)
{
EditorGUILayout.BeginHorizontal();
EditorGUILayout.LabelField(_label);
if (GUILayout.Button(SharedStyles.changeSelectionTooltip, SharedStyles.BuiltIn.changeButtonSmall))
{
Action<Type> cb = (selectedType) =>
{
if (_itemType.IsGenericType && selectedType.IsGenericType)
{
var genArgs = _itemType.GetGenericArguments();
selectedType = selectedType.GetGenericTypeDefinition().MakeGenericType(genArgs);
}
var old = _item;
_item = Activator.CreateInstance(selectedType);
_editorItem = ReflectMaster.Reflect(_item);
_setter(_item);
state.currentAIUI.undoRedo.Do(new CustomEditorFieldOperation(old, _item, _setter));
state.MarkDirty();
};
//We do not want the button click itself to count as a change.. same as above.
GUI.changed = false;
var screenPos = EditorGUIUtility.GUIToScreenPoint(Event.current.mousePosition);
AIEnreplacedySelectorWindow.Get(screenPos, _itemType, cb);
}
EditorGUILayout.EndHorizontal();
bool doDelete = false;
if (_item != null)
{
EditorGUILayout.BeginVertical("Box");
EditorGUILayout.BeginHorizontal(SharedStyles.BuiltIn.lisreplacedemHeader);
EditorGUILayout.LabelField(_editorItem.name, SharedStyles.BuiltIn.normalText);
if (GUILayout.Button(SharedStyles.deleteTooltip, SharedStyles.BuiltIn.deleteButtonSmall))
{
GUI.changed = false;
if (DisplayHelper.ConfirmDelete("item"))
{
doDelete = true;
}
}
EditorGUILayout.EndHorizontal();
_editorItem.Render(state);
EditorGUILayout.EndVertical();
}
EditorGUILayout.Separator();
//We do the delete outside any layout stuff to ensure we don't get weird warnings.
if (doDelete)
{
state.currentAIUI.undoRedo.Do(new CustomEditorFieldOperation(_item, null, _setter));
_setter(null);
_item = null;
_editorItem = null;
state.MarkDirty();
}
}
19
View Source File : CustomEditorFieldOperation.cs
License : GNU Lesser General Public License v3.0
Project Creator : ApexGameTools
License : GNU Lesser General Public License v3.0
Project Creator : ApexGameTools
void IUndoRedo.Do()
{
_setter(_newValue);
}
19
View Source File : CustomEditorFieldOperation.cs
License : GNU Lesser General Public License v3.0
Project Creator : ApexGameTools
License : GNU Lesser General Public License v3.0
Project Creator : ApexGameTools
void IUndoRedo.Undo()
{
_setter(_originalValue);
}
19
View Source File : ARViewPagerPageClickListener.cs
License : Apache License 2.0
Project Creator : AppRopio
License : Apache License 2.0
Project Creator : AppRopio
public void OnClick(View v)
{
object context;
if (_datacontextReference.TryGetTarget(out context))
{
_onClick?.Invoke(context);
}
}
19
View Source File : ActionItem.cs
License : MIT License
Project Creator : AristotelisChantzaras
License : MIT License
Project Creator : AristotelisChantzaras
public static Task Schedule(Action<object> action, object state = null, bool attachToParent = false)
{
// UWP doesn't support ThreadPool[.QueueUserWorkItem] so just use Task.Factory.StartNew
return Task.Factory.StartNew(s => action(s), state, (attachToParent) ? TaskCreationOptions.AttachedToParent : TaskCreationOptions.DenyChildAttach);
}
19
View Source File : UnityMessageManager.cs
License : MIT License
Project Creator : asmadsen
License : MIT License
Project Creator : asmadsen
void onRNMessage(string message)
{
if (message.StartsWith(MessagePrefix))
{
message = message.Replace(MessagePrefix, "");
}
else
{
return;
}
MessageHandler handler = MessageHandler.Deserialize(message);
if ("end".Equals(handler.seq))
{
// handle callback message
UnityMessage m;
if (waitCallbackMessageMap.TryGetValue(handler.id, out m))
{
waitCallbackMessageMap.Remove(handler.id);
if (m.callBack != null)
{
m.callBack(handler.getData<object>()); // todo
}
}
return;
}
if (OnRNMessage != null)
{
OnRNMessage(handler);
}
}
19
View Source File : SendingHeadersEvent.cs
License : Apache License 2.0
Project Creator : aspnet
License : Apache License 2.0
Project Creator : aspnet
internal void Fire()
{
IList<Tuple<Action<object>, object>> callbacks = Interlocked.Exchange(ref _callbacks, null);
if (callbacks == null)
{
return;
}
int count = callbacks.Count;
for (int index = 0; index != count; ++index)
{
Tuple<Action<object>, object> tuple = callbacks[count - index - 1];
tuple.Item1(tuple.Item2);
}
}
19
View Source File : ExceptionFilterStream.cs
License : Apache License 2.0
Project Creator : aspnet
License : Apache License 2.0
Project Creator : aspnet
public void TryInvoke()
{
if (_pending == 1)
{
if (Interlocked.CompareExchange(ref _pending, 0, 1) == 1)
{
_callback(_state);
}
}
}
19
View Source File : OwinHttpListenerResponse.cs
License : Apache License 2.0
Project Creator : aspnet
License : Apache License 2.0
Project Creator : aspnet
private void NotifyOnSendingHeaders()
{
IList<Tuple<Action<object>, object>> actions = Interlocked.Exchange(ref _onSendingHeadersActions, null);
Contract.replacedert(actions != null);
// Execute last to first. This mimics a stack unwind.
for (int i = actions.Count - 1; i >= 0; i--)
{
Tuple<Action<object>, object> actionPair = actions[i];
actionPair.Item1(actionPair.Item2);
}
}
19
View Source File : InMemoryProvider.cs
License : Apache License 2.0
Project Creator : asynkron
License : Apache License 2.0
Project Creator : asynkron
public Task<long> GetEventsAsync(string actorName, long indexStart, long indexEnd, Action<object> callback)
{
if (Events.TryGetValue(actorName, out var events))
{
foreach (var e in events.Where(e => e.Key >= indexStart && e.Key <= indexEnd))
{
callback(e.Value);
}
}
return Task.FromResult(0L);
}
19
View Source File : NonBlockingBoundedMailbox.cs
License : Apache License 2.0
Project Creator : asynkron
License : Apache License 2.0
Project Creator : asynkron
public void Push(object message)
{
if (SpinWait.SpinUntil(() => _messages.Count < _maxSize, _timeout))
{
//this will be racy, but best effort is good enough..
_messages.Enqueue(message);
}
else
_overflowAction(message);
}
See More Examples