private static void RunViewModelLifecycle(IMvxViewModel viewModel, IMvxBundle savedState, MvxViewModelRequest request) { try { var parameterValues = new MvxBundle(request.ParameterValues); viewModel.CallBundleMethods("Init", parameterValues); if (savedState != null) { viewModel.CallBundleMethods("ReloadState", savedState); } viewModel.Start(); } catch (Exception exception) { throw exception.MvxWrap("Problem running viewModel lifecycle of type {0}", viewModel.GetType().Name); } }
protected virtual void CallReloadStateMethods(IMvxViewModel viewModel, IMvxBundle savedState) { viewModel.CallBundleMethods("ReloadState", savedState); }
protected virtual void CallCustomInitMethods(IMvxViewModel viewModel, IMvxBundle parameterValues) { viewModel.CallBundleMethods("Init", parameterValues); }
private static void RunViewModelLifecycle(IMvxViewModel viewModel, IMvxBundle savedState, MvxViewModelRequest request) { try { if (request != null) { var parameterValues = new MvxBundle(request.ParameterValues); viewModel.CallBundleMethods("Init", parameterValues); } if (savedState != null) { viewModel.CallBundleMethods("ReloadState", savedState); } viewModel.Start(); } catch (Exception exception) { throw exception.MvxWrap("Problem running viewModel lifecycle of type {0}", viewModel.GetType().Name); } }