Version 2.2.0 (03. Sep 2013)

General

  • CHG: From now on, all release build assemblies will contain Trace output, for example warnings about unhandled exceptions, inappropritely defined message handler, etc.

amarok.common

  • CHG: Enhanced FindBaseException(..) on Helper and extension method FindBaseException() on Exception to support AggregateException. Now, all inner exceptions and all inner aggregrate exceptions are searched for a matching exception type. This method will return only the first matching exception.

  • NEW: Introduced FindBaseExceptions(..) on Helper and extension method FindBaseExceptions() on Exception that search through all inner exceptions, including AggregateExceptions, and return an array of all exceptions matching the given exception type.

  • NEW: Introduced helper methods GetTempPath() and GetTempFile() on static class Helper. Those methods generate unique folder/file names for temporary use, but don't create these folders/files.

  • NEW: Introduced extension method ReadToEnd() on Stream that returns a BufferSegment containing the sequence of bytes read from the given stream.

  • NEW: Introduced constants KiloByte, MegaByte, GigaByte and TeraByte on Helper. You can use those constants like '5 * Helper.MegaByte' instead of '5 * 1024 * 1024'.

amarok.agents

  • CHG: Introduced property Id of type Guid on class Message. This property is automatically populated with a globally uniuqe id for each newly instantiated message. This property represents a unique message id and can be used for identification purposes.

  • CHG: Type Message now overrides GetHashCode() and Equals() to determine equalitiy of two message instances by their message id. Message also realizes IEquatable.

  • CHG: Method Post() on IDispatcher now returns a boolean value, instead of void. This boolean value indicates whether the message being posted has been scheduled for further processing. False indicates that the message is not scheduled, because either no matching message handler exists, the message has been filtered or the dispatcher is completing or has already been completed.

  • NEW: Introduced static class AgentHooks that provides various hooks (events) for diagnosis purposes. For example, each time an agent publishes a message the event MessagePublished will be raised. Supplied event args will provide information about the agent and the message being published. Similar, the events OperationHandlerStarted and OperationHandlerFinished will be raised when execution of an operation handler starts and finishes.

amarok.presentation

  • NEW: Added overloaded extension method Localize(..) on LocalizeHelper to support HeaderedItemsControl, e.g. MenuItem or RibbonGroup.
  • NEW: Introduced method SetupDialogWindowStyle() on type Wpf that can be used to change the style of a given window to a modal dialog, i.e. removing the minimize and maximize boxes.
  • NEW: Introduced attached behavior DialogBehavior.IsDialog (in XAML: a:DialogBehavior.IsDialog="true") that can be set to True to change the style of the target window to a modal dialog. Please note, that changing the attached property back to False does not remove the dialog-style.

  • NEW: Introduced static class ViewModelHooks that provides various hooks (events) for diagnosis purposes. For example, each time a view model object raises a property changed event the hook event PropertyChanged will be raised. Supplied event args will provide information about the view model instance and the property name being changed.

  • NEW: Introduced static class ViewCommandHooks that provides various hooks (events) for diagnosis purposes. For example, each time the command is executed the event ExecuteCalled will be raised. Supplied event args will provide information about the view command handler.

 

Last edited Sep 3, 2013 at 6:30 PM by OlafKober, version 2

Comments

No comments yet.