All pastes #537610 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-06-04 19:54 UTC
rendered paste body
**** Compiled into Tomboy.exe ****

[assembly:AddinRoot ("Tomboy", "0.7")]

namespace Tomboy
{
	/// <summary>
	/// Implement this interface if your Addin needs to do things when Tomboy
	/// starts up and shuts down.
	/// </summary>
	[TypeExtensionPoint ("/Tomboy/ApplicationAddin", Description="ApplicationAddin classes")]
	public interface IApplicationAddin
	{
		/// <summary>
		/// Called when Tomboy has started up and is nearly 100% initialized.
		/// </summary>
		void Startup ();
		
		/// <summary>
		/// Called just before Tomboy shuts down for good.
		/// </summary>
		void Shutdown ();
	}
}


**** Compiled into Tasks.dll ****
[assembly:AddinDependency ("Tomboy", "0.7")]

public class TasksAddin : IApplicationAddin
{
		public void Startup ()
		{
			Logger.Debug ("TasksAddin.Startup ()");
		}

		public void Shutdown ()
		{
			Logger.Debug ("TasksAddin.Shutdown ()");
		}
}

**** Tasks.addin.xml: Installed in same directory as Tasks.dll ****
<Addin id = "TasksAddin"
        name = "Tasks Add-in"
        author = "Tomboy Project"
        description = "Add-in to enable tasks support for Tomboy"
        version = "0.1">

        <Runtime>
                <Import assembly="Tasks.dll" />
        </Runtime>

        <Dependencies>
                <Addin id="Tomboy" version="0.7" />
        </Dependencies>

        <Extension path="/Tomboy/ApplicationAddin">
                <Class class="TasksAddin" />
        </Extension>
</Addin>

**** Program output ****
[INFO]: Initializing Mono.Addins
[DEBUG]: OnAddinLoaded: Tomboy
Checking: /home/boyd/.tomboy/addins
Checking: /home/boyd/stage/tomboy/lib/tomboy/addins
Checking: /data/boyd/projects/tomboy/Tomboy
Folders checked (88 ms)
Looking for addins
Checking: /home/boyd/.tomboy/addins
Checking: /home/boyd/stage/tomboy/lib/tomboy/addins
Checking: /data/boyd/projects/tomboy/Tomboy
Scanning file: /home/boyd/stage/tomboy/lib/tomboy/addins/Tasks.dll
Scanning file: /home/boyd/stage/tomboy/lib/tomboy/addins/TasksAddin.addin.xml
Scanning file: /data/boyd/projects/tomboy/Tomboy/Tomboy.exe
Folders scan completed (326 ms)
Generating add-in extension maps
Addin relation map generated.
  Addins Updated: 2
  Extension points: 0
  Extensions: 1
  Extension nodes: 1
  Node sets: 0
Add-in relations analyzed (25 ms)

Unhandled Exception: System.InvalidOperationException: Extension node not found in path: /Tomboy/ApplicationAddin
  at Mono.Addins.ExtensionContext.GetExtensionObjects (System.String path, System.Type arrayElementType, Boolean reuseCachedInstance) [0x00029] in /data/boyd/projects/tomboy/Tomboy/Mono.Addins/Mono.Addins/Mono.Addins/ExtensionContext.cs:267 
  at Mono.Addins.ExtensionContext.GetExtensionObjects (System.String path) [0x00000] in /data/boyd/projects/tomboy/Tomboy/Mono.Addins/Mono.Addins/Mono.Addins/ExtensionContext.cs:248 
  at Mono.Addins.AddinManager.GetExtensionObjects (System.String path) [0x00005] in /data/boyd/projects/tomboy/Tomboy/Mono.Addins/Mono.Addins/Mono.Addins/AddinManager.cs:169 
  at Tomboy.Tomboy.Main (System.String[] args) [0x00079] in /data/boyd/projects/tomboy/Tomboy/Tomboy.cs:56