<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.kram.nz/index.php?action=history&amp;feed=atom&amp;title=SE401%3A33%3APlugin_Analysis</id>
	<title>SE401:33:Plugin Analysis - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.kram.nz/index.php?action=history&amp;feed=atom&amp;title=SE401%3A33%3APlugin_Analysis"/>
	<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE401:33:Plugin_Analysis&amp;action=history"/>
	<updated>2026-04-30T02:50:56Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.kram.nz/index.php?title=SE401:33:Plugin_Analysis&amp;diff=74&amp;oldid=prev</id>
		<title>Mark: New page: ==&lt;font color=#00267c&gt;Initial Thoughts&lt;/font&gt;== Before we began looking on how to develop a plug-in interface we thought it would be quite simple.  It would require an interface (or equiva...</title>
		<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE401:33:Plugin_Analysis&amp;diff=74&amp;oldid=prev"/>
		<updated>2008-02-15T20:03:56Z</updated>

		<summary type="html">&lt;p&gt;New page: ==&amp;lt;font color=#00267c&amp;gt;Initial Thoughts&amp;lt;/font&amp;gt;== Before we began looking on how to develop a plug-in interface we thought it would be quite simple.  It would require an interface (or equiva...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==&amp;lt;font color=#00267c&amp;gt;Initial Thoughts&amp;lt;/font&amp;gt;==&lt;br /&gt;
Before we began looking on how to develop a plug-in interface we thought it would be quite simple.&lt;br /&gt;
&lt;br /&gt;
It would require an interface (or equivalent in .net/VB) with predefined methods like:&lt;br /&gt;
:*Variables to describe name/functionality, input type(s) needed etc.&lt;br /&gt;
::*This raises problems, how do you deal with plug-ins that require more than 1 data input?&lt;br /&gt;
:::*Could be resolved by creating applications to merge data into 1 source.&lt;br /&gt;
:::*This wont work if the data sources are incompatible - might be easier if we make the plugin take an array of data sources.&lt;br /&gt;
:*Function(s) that process input data.&lt;br /&gt;
:*Function to output source code.&lt;br /&gt;
:*How to display a static version of the content in the editor.&lt;br /&gt;
:*Need to create a way to scan a directory for installed plug-ins.&lt;br /&gt;
:*As the tool is for users with low computer skills we probably don&amp;#039;t want them to be going off to sites and downloading/installing content themselves.  It would be preferable to make this part of the tool - could do this similar to the bit torrent Client Azureus&amp;#039; approach - downloads a list of plug-ins from the site, and can tick the plug-ins you would like to install and press download.  They are automatically installed and activated upon restart.&lt;br /&gt;
::*This brings more issues - who wants to restart the application after downloading a new plug-in - we should find out if its possible to develop a hot pluggable tool (? is this the right term - start plug-ins while tool is running).&lt;br /&gt;
:*We would need to create a method of checking for plug-in updates so users do not need to manually check.&lt;br /&gt;
::*Added to user stories - See Plug-in specific stories&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;font color=#00267c&amp;gt;Research&amp;lt;/font&amp;gt;==&lt;br /&gt;
MSDN site makes it sound very easy to create a plug-in framework - they even have a guide on how to do it&amp;lt;br&amp;gt;&lt;br /&gt;
[http://msdn2.microsoft.com/en-us/library/ms972962.aspx MSDN Creating a Plug-In Framework]&lt;br /&gt;
:Note: Also has guides on making GUI&amp;#039;s&lt;br /&gt;
This doesn&amp;#039;t address making hot pluggable tools, but Java can do it so surely .net does...?&lt;br /&gt;
:*Brief read over the MSDN guide would suggest it doesn&amp;#039;t as you need to modify a .config file before the plug-in can be used, we will need to automate this for the user.  Restarting the application is not a huge deal though - more of a user convenience.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==&amp;lt;font color=#00267c&amp;gt;Final Thoughts&amp;lt;/font&amp;gt;==&lt;br /&gt;
:*We will initially build the framework without plug-ins (functionality will be part of the framework).&lt;br /&gt;
:*As this is an XP project we can choose to add plug-ins at any stage.&lt;br /&gt;
::*Will involve a bit of refactoring but should not cause any major problems (maybe 1 iterations worth).&lt;br /&gt;
:*Will discuss with Gill and see if she agrees.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[SE401:33:Mashup_Creation_Tool|◄ Back]]&lt;/div&gt;</summary>
		<author><name>Mark</name></author>
	</entry>
</feed>