1.8

Rating: No reviews yet
Downloads: 35
Change Set: af532d650ff6
Released: Aug 23, 2012
Updated: Nov 2, 2012 by OlafKober
Dev status: Alpha Help Icon

Recommended Download

Application Amarok Framework Library 1.8 (Runtime)
application, 387K, uploaded Aug 23, 2012 - 10 downloads

Other Available Downloads

Source Code Amarok Framework Library 1.8 (Source)
source code, 4876K, uploaded Aug 23, 2012 - 9 downloads
Example Amarok Framework Library 1.8 (Samples)
example, 172K, uploaded Aug 23, 2012 - 8 downloads
Example Amarok Framework Library 1.8 (Visual Studio Item Templates)
example, 5K, uploaded Aug 23, 2012 - 8 downloads

Release Notes

  • CHG: Added support for Visual Studio 2012 RTM and .NET Framework 4.5 RTM. All assemblies are provided for both .NET Framework 4 and .NET Framework 4.5. Assemblies targeting .NET Framework 4 are compiled against the latest CTP version of System.Threading.Tasks.Dataflow (version 1.0.4303). Assemblies targeting .NET Framework 4.5 are compiled against version 4.5.6 available via NuGet (Microsoft.TPL.Dataflow).
amarok.common
  • CHG: [Breaking] Re-designed base class CompletableObject. The overridable method OnCompleting(..) is no longer available. The overridable method OnComplete(..) now returns a Task, which is used to signal completion. The implementation of OnComplete(..) should return as fast as possible and perform as much work as possible asynchronously without blocking the calling thread.
amarok.agents
  • FIX: A thread-blocking implementation of the complete pattern in most objects (runtime, subsystem, agent, etc.) caused a delay of a few seconds when shutting down a runtime with a few subsystems and a few agents. This has been fixed. Now all completable objects are capable to tear down asynchronously; without blocking threads.
Agents
  • NEW: Introduced support for async message handler, information handler and operation handler. Methods can now use the async modifier, but have to change the return type from void to Task or from TResult to Task<TResult>. It is ensured that code portions (continuations) after awaits will run in the correct execution context, for example concurrent or exclusive execution.
Runtime
  • CHG: [Breaking] Changed Runtime to Runtime<TEnvironment>. It is now required to specify the runtime environment type as generic type argument. Various type members will use TEnvironment instead of RuntimeEnvironment.
Subsystem
  • CHG: [Breaking] Changed Subsystem to Subsystem<TEnvironment>. It is now required to specify the runtime environment type as generic type argument. Various type members will use TEnvironment instead of RuntimeEnvironment.
  • CHG: [Breaking] Introduced overrideable method OnCleanup() on Subsystem<TEnvironment>, which can be overridden to implement custom cleanup logic. For full control over the completion one can override OnComplete(..) or OnCompleted(). For simple cleanup tasks OnCleanup() should be suitable.
  • CHG: [Breaking] The overloaded method LoadSubsystem() on SubsystemFactory now throws a SubsystemLoadException (instead of MissingMethodException) when loading a subsystem fails. Refer to the inner exception for more details.
amarok.presentation
  • NEW: Introduced base classes for implementing custom value converters. You can use either ValueConverter<..> to implement a value converter that is very specific, must be instantiated and cannot be shared by multiple data bindings, or you can derive from MarkupExtensionValueConverter<..> which is a value converter and markup extension at the same time, allowing the converter to be used without instantating it first in XAML. But this kind of value converter must be state-less, meaning a single instance must be able to serve multiple data bindings at the same time.
  • CHG: [Breaking] Reworked all existing value converters to derive from either ValueConverter<..> or MarkupExtensionValueConverter<..>. In addition the behavior of all value converters in error situations was unified based on best practice recommendations, meaning value converters will return the special value DependencyProperty.UnsetValue whenever a conversion is not possible.

For a full list of changes refer to Release Notes.

Reviews for this release

No reviews yet for this release.