<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/wordpress-mu-1.2.4" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Seva at Eclipse</title>
	<link>http://dev.eclipse.org/blogs/seva</link>
	<description>Seva Lapsha working on Eclipse PDT project</description>
	<pubDate>Mon, 11 Aug 2008 18:02:58 +0000</pubDate>
	<generator>http://wordpress.org/?v=wordpress-mu-1.2.4</generator>
	<language>en</language>
			<item>
		<title>Prototype styled Google Analytics javascript snippet</title>
		<link>http://dev.eclipse.org/blogs/seva/2008/08/11/prototype-styled-google-analytics-javascript-snippet/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2008/08/11/prototype-styled-google-analytics-javascript-snippet/#comments</comments>
		<pubDate>Mon, 11 Aug 2008 18:02:58 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[leisure]]></category>

		<category><![CDATA[html]]></category>

		<category><![CDATA[prototype]]></category>

		<category><![CDATA[integration]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[web]]></category>

		<category><![CDATA[java]]></category>

		<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2008/08/11/prototype-styled-google-analytics-javascript-snippet/</guid>
		<description><![CDATA[Recently I&#8217;ve created a prototype styled javascript snippet to enable google analytics on one of my sites. Save this code in google.analytics.js file and include it from the head tag of the page just after including of the prototype.js:
gaTrackerId = 'ss-ddddddd-d'; // insert your tracker id here
document.observe('dom:loaded', function() {
var gaJsHost = (
('https:' == document.location.protocol)
? 'https://ssl.'
: [...]]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve created a <a href="http://www.prototypejs.org/">prototype</a> styled javascript snippet to enable <a href="http://www.google.com/analytics/">google analytics</a> on one of my sites. Save this code in <code>google.analytics.js</code> file and include it from the <code>head</code> tag of the page just after including of the <code>prototype.js</code>:</p>
<p><code>gaTrackerId = 'ss-ddddddd-d'; // insert your tracker id here</code></p>
<p><code>document.observe('dom:loaded', function() {<br />
var gaJsHost = (<br />
('https:' == document.location.protocol)<br />
? 'https://ssl.'<br />
: 'http://www.'<br />
) + 'google-analytics.com/ga.js';<br />
var script = new Element('script', { 'src': gaJsHost});<br />
var gaTrack = function() {<br />
if (<br />
!script.readyState<br />
|| /loaded|complete/.test(script.readyState)<br />
) {<br />
var pageTracker = _gat._getTracker(gaTrackerId);<br />
pageTracker._trackPageview();<br />
}<br />
};<br />
script.observe('load', gaTrack);<br />
script.observe('readystatechange', gaTrack);<br />
document.body.appendChild(script);<br />
});</code></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2008/08/11/prototype-styled-google-analytics-javascript-snippet/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Copying nodes between XML documents with Java DOM</title>
		<link>http://dev.eclipse.org/blogs/seva/2008/06/26/copying-nodes-between-xml-documents-with-java-dom/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2008/06/26/copying-nodes-between-xml-documents-with-java-dom/#comments</comments>
		<pubDate>Thu, 26 Jun 2008 13:28:40 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[development]]></category>

		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2008/06/26/copying-nodes-between-xml-documents-with-java-dom/</guid>
		<description><![CDATA[Today I had an atomic task of creating a most convenient way to copy nodes from one XML document to another with Java&#8217;s DOM implementation. Googling did not help me much in it, so I will share the solution here in case someone would be challenged too.
So, imagine you have multiple XML documents like this:
&#60;document&#62;&#60;section&#62;&#60;node [...]]]></description>
			<content:encoded><![CDATA[<p>Today I had an atomic task of creating a most convenient way to copy nodes from one XML document to another with Java&#8217;s DOM implementation. Googling did not help me much in it, so I will share the solution here in case someone would be challenged too.</p>
<p>So, imagine you have multiple XML documents like this:</p>
<p><code>&lt;document&gt;&lt;section&gt;&lt;node attribute="value" /&gt;&lt;/section&gt;&lt;/document&gt;</code></p>
<p>&#8230;, another one like this:</p>
<p><code>&lt;storage&gt;&lt;sections /&gt;&lt;/storage&gt;</code></p>
<p>&#8230; and you wish to read the multilple documents and to put the <code>&lt;section&gt;</code> nodes into the <code>&lt;sections&gt;</code> node of the second one respecting all the structure.</p>
<p>To do that you should:</p>
<p>1. Create the XML document builder:</p>
<p><code>DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();</code></p>
<p>2. Get the <code>&lt;sections&gt;</code> node of the target file:</p>
<p><code>File target;<br />
Document targetDom = builder.parse(new InputSource(new FileReader(target));<br />
Node targetSections = targetDom.getElementsByTagName("sections").item(0);<br />
// TODO this is not the best way to use that.<br />
// I advice XPath instead.<br />
</code><br />
3. Iterate over the source files and get the <code>&lt;section&gt;</code> nodes:</p>
<p><code>File[] sources;<br />
for (File source : sources) {<br />
    Node sourceSection = builder.parse(new InputSource(new FileReader(source))<br />
        .getElementsByTagName("section").item(0);<br />
    // [continued inside]<br />
}</code></p>
<p>4. Copy the node into the target document:</p>
<p><code>targetDom.appendChild(targetDom.adoptNode(section.cloneNode(true)));<br />
// 'true' means we want to clone children too</code></p>
<p>5. Write the target back to the file:</p>
<p><code>TransformerFactory.newInstance().newTransformer().transform(new DOMSource(targetDom)<br />
    , new StreamResult(new FileWriter(target)));</code></p>
<p>That&#8217;s it. Note, this code lacks error handling and probably won&#8217;t work directly after copy-paste, but just shows you the usage of the classes.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2008/06/26/copying-nodes-between-xml-documents-with-java-dom/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Why Eclipse Equinox P2 Update Manager is not good enough for me yet</title>
		<link>http://dev.eclipse.org/blogs/seva/2008/05/16/why-eclipse-equinox-p2-update-manager-sucks/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2008/05/16/why-eclipse-equinox-p2-update-manager-sucks/#comments</comments>
		<pubDate>Thu, 15 May 2008 22:55:37 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[software]]></category>

		<category><![CDATA[integration]]></category>

		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2008/05/16/why-eclipse-equinox-p2-update-manager-sucks/</guid>
		<description><![CDATA[As you all know in Eclipse 3.4 there is a new Update Manager (more correctly - Plug-in Manager) which is intended to be better.
The update managing side of it is an improvement indeed. But the first thing raised my alertness is there is no place to point where do I want my selected plug-ins to [...]]]></description>
			<content:encoded><![CDATA[<p>As you all know in Eclipse 3.4 there is a new Update Manager (more correctly - Plug-in Manager) which is intended to be better.</p>
<p>The update managing side of it is an improvement indeed. But the first thing raised my alertness is there is no place to point where do I want my selected plug-ins to be installed. Well, I thought it&#8217;s just a default selection and manually downloaded the plug-ins and dropped them into the famous <strong>dropins</strong> directory (of course with keeping directory structure). And then after restarting eclipse I discovered that there is no such a thing like hierarchy of plug-ins and plug-in locations at all. That&#8217;s too bad.</p>
<p>Now, let&#8217;s say you installed all the plug-ins. Then if you want to update them, you don&#8217;t have a overall progress bar. And this is a network connection related progress. Isn&#8217;t it stupid?</p>
<p>Another glitch: My wireless connection to my neighbor&#8217;s hub suddenly aborted. So what does it do? It shows me an error dialog <strong>behind</strong> the modal dialog of progress information. I&#8217;m not even mentioning that there is no retry/ignore options.</p>
<p>Now they say: you can replace the new p2 with the good old Update Manager. But for that you must restore several configuration files from 3.3.2. I understand, this is my stupid mistake that I first completely destroyed my previous installation (I can allow it to myself at home), but it&#8217;s still annoying.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2008/05/16/why-eclipse-equinox-p2-update-manager-sucks/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Working with Eclipse on two displays - Picture</title>
		<link>http://dev.eclipse.org/blogs/seva/2008/04/01/working-with-eclipse-on-two-displays-picture/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2008/04/01/working-with-eclipse-on-two-displays-picture/#comments</comments>
		<pubDate>Tue, 01 Apr 2008 17:08:12 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[hardware]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2008/04/01/working-with-eclipse-on-two-displays-picture/</guid>
		<description><![CDATA[As I mentioned previously, recently I started to work on two monitors. Here comes the picture (sorry for the bad quality):

]]></description>
			<content:encoded><![CDATA[<p>As I <a href="http://dev.eclipse.org/blogs/seva/2008/03/22/working-with-eclipse-on-two-displays/">mentioned previously</a>, recently I started to work on two monitors. Here comes the picture (sorry for the bad quality):</p>
<p><a href="http://picasaweb.google.com/seva.lapsha/Unsorted/photo#5184321491010778066"><img src="http://lh6.google.com/seva.lapsha/R_Jo7ake89I/AAAAAAAAAIc/mMw1--Cx5DQ/s144/DSC00254.JPG.jpg" height="108" width="144" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2008/04/01/working-with-eclipse-on-two-displays-picture/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Working with Eclipse on two displays</title>
		<link>http://dev.eclipse.org/blogs/seva/2008/03/22/working-with-eclipse-on-two-displays/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2008/03/22/working-with-eclipse-on-two-displays/#comments</comments>
		<pubDate>Fri, 21 Mar 2008 23:38:09 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[software]]></category>

		<category><![CDATA[hardware]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2008/03/22/working-with-eclipse-on-two-displays/</guid>
		<description><![CDATA[Several days ago I was given an additional monitor, and the question of &#8220;how to arrange Eclipse view on two displays&#8221; was raised. After several tests I made the conclusion that the best way is to stay with my default preferred arrangement, with single difference - to detach and move all the non-editor views to [...]]]></description>
			<content:encoded><![CDATA[<p>Several days ago I was given an additional monitor, and the question of &#8220;how to arrange Eclipse view on two displays&#8221; was raised. After several tests I made the conclusion that the best way is to stay with my default preferred arrangement, with single difference - to detach and move all the non-editor views to the secondary screen. It frees up editor area and at the same time does not require re-adopting new layout.</p>
<p>The bad news is Eclipse rejects to start up when <a HREF="http://www.realtimesoft.com/ultramon/" TITLE="RealTime Soft UltraMon">UltraMon</a> is running.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2008/03/22/working-with-eclipse-on-two-displays/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Nice Diagram Editor - yWorks&#8217; yEd</title>
		<link>http://dev.eclipse.org/blogs/seva/2008/02/21/nice-diagram-editor-yworks-yed/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2008/02/21/nice-diagram-editor-yworks-yed/#comments</comments>
		<pubDate>Thu, 21 Feb 2008 14:45:54 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[software]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[java]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2008/02/21/nice-diagram-editor-yworks-yed/</guid>
		<description><![CDATA[Today I felt need in simple diagram editor in order to draw a comprehensive flow-chart diagram.
Previously I widely used Dia one, but it was always to painful to achieve acceptable with no constant mistakes and overall creation always took too long.
In the past I also several times evaluated Enterprise Architect, Visio and SmartDraw, but they [...]]]></description>
			<content:encoded><![CDATA[<p>Today I felt need in simple diagram editor in order to draw a comprehensive flow-chart diagram.</p>
<p>Previously I widely used <a href="http://www.gnome.org/projects/dia/" title="Gnome Dia">Dia</a> one, but it was always to painful to achieve acceptable with no constant mistakes and overall creation always took too long.</p>
<p>In the past I also several times evaluated <a href="http://www.sparxsystems.com.au/products/ea.html" title="Sprax Systems Enterprise Architect">Enterprise Architect</a>, <a href="http://office.microsoft.com/en-us/visio/default.aspx" title="Microsoft Visio">Visio</a> and <a href="http://www.smartdraw.com/" title="SmartDraw">SmartDraw,</a> but they were too heavy, not only from the package size and memory usage view, but also they required too much time to get used to them, and time is the most expensive resource, as you know.</p>
<p>So, today I&#8217;ve restarted the process of finding a simple and good diagram editor, and surprisingly, the first try give me the one, which caused me to stop immediately.</p>
<p>I won&#8217;t list here all <a href="http://www.yworks.com/en/index.html" title="yWorks">yWorks</a>&#8216; <a href="http://www.yworks.com/en/products_yed_about.htm" title="yWorks yEd">yEd</a>&#8217;s features and won&#8217;t compare it to anything else - Just try it, and I promise: you will be happy.  The only thing to add is it&#8217;s very fast and light, despite the fact it&#8217;s java based.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2008/02/21/nice-diagram-editor-yworks-yed/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Java Code Structure and Dependencies Analysis Tools for Eclipse</title>
		<link>http://dev.eclipse.org/blogs/seva/2008/02/01/java-code-structure-and-dependencies-analysis-tools-for-eclipse/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2008/02/01/java-code-structure-and-dependencies-analysis-tools-for-eclipse/#comments</comments>
		<pubDate>Fri, 01 Feb 2008 00:39:26 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[software]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[java]]></category>

		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2008/02/01/java-code-structure-and-dependencies-analysis-tools-for-eclipse/</guid>
		<description><![CDATA[One of my first assignments at the new company (remember, I left Zend previous week), was analysing existing projects structure. Which means distribution of classes into packages, package dependencies, libraries usage etc.
The results, I would say, were far from being perfect, but I can bet, most of large (and especially proprietary) projects would look similar or even worse. But this is not what I was going to say.
What I am going to say, is for this purpose I evaluated several analysis tools and I want to  share my opinion about them.
Here they are (in order of evaluation).
1. Eclipse Metrics(1) (CPL)
Pros: Runs fast, provides tangle detector.
Cons: Dependencies graph is not usable with large projects. No text output of dependencies is available.
2. Eclipse Metrics(2) (CPL)
Pros: no.
Cons: Does not analyze dependencies.
2. JDepend
Pros: Nice and simple UI, fast analysis.
Cons: Provides neither graph [...]]]></description>
			<content:encoded><![CDATA[<p>One of my first assignments at the new company (<a HREF="http://sevalapsha.wordpress.com/2008/01/22/zend-studio-for-eclipse-release-cetera/">remember</a>, I left Zend previous week), was analysing existing projects structure. Which means distribution of classes into packages, package dependencies, libraries usage etc.</p>
<p>The results, I would say, were far from being perfect, but I can bet, most of large (and especially proprietary) projects would look similar or even worse. But this is not what I was going to say.</p>
<p>What I am going to say, is for this purpose I evaluated several analysis tools and I want to  share my opinion about them.</p>
<p>Here they are (in order of evaluation).</p>
<p>1. <a TITLE="SourceForge Metrics" HREF="http://metrics.sourceforge.net/"><strong>Eclipse Metrics(1)</strong></a> (CPL)</p>
<p>Pros: Runs fast, provides tangle detector.</p>
<p>Cons: Dependencies graph is not usable with large projects. No text output of dependencies is available.</p>
<p>2. <a TITLE="StateOfFlow Eclipse Metrics" HREF="http://eclipse-metrics.sourceforge.net/"><strong>Eclipse Metrics(2)</strong></a> (CPL)</p>
<p>Pros: no.</p>
<p>Cons: Does not analyze dependencies.</p>
<p>2. <a HREF="http://andrei.gmxhome.de/jdepend4eclipse/index.html" TITLE="JDepend4Eclipse"><strong>JDepend</strong></a></p>
<p>Pros: Nice and simple UI, fast analysis.</p>
<p>Cons: Provides neither graph nor detailed dependency cycles information, doesn&#8217;t provide links to source.</p>
<p>3. <a HREF="http://www.soyatec.com/euml2/features/eDepend/" TITLE="SoyaTec eUML2 eDepend"><strong>eDepend</strong></a> (Commercial)</p>
<p>Pros: Fully featured graphic dependency analyzer, allows filtering on dependency kind</p>
<p>Cons: Commercial, creates disproportedly wide  graphs for large projects that are hard to maintain, very slow analyzing and graph creation, doesn&#8217;t provide info on elements which depend on selected element.</p>
<p>4. <a HREF="http://stan4j.com/" TITLE="Odysseus StAn4J"><strong>stan4j</strong></a> (Free Beta)</p>
<p>Pros: Fully featured graphic dependency analyzer, very cute <a HREF="http://www.eclipse.org/gef/" TITLE="Eclipse Graphical Editing Framework">GEF</a> based UI, cycles and tangles visualizer, very convenient eclipse integration, report/graphics export ability.</p>
<p>Cons: Does not provide recursive dependency paths on selected elements, <strike>does not provide inter-package class dependencies information, </strike>non graphical views improvement is suggested.</p>
<p><strong>Conclusion</strong></p>
<p>In the end, in order to perform my task I&#8217;ve mostly used stan4j, sometimes switched to eDepend and once or twice times executed JDepend - each of them has its specific advantages.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2008/02/01/java-code-structure-and-dependencies-analysis-tools-for-eclipse/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Zend Studio for Eclipse Release &#38; cetera</title>
		<link>http://dev.eclipse.org/blogs/seva/2008/01/22/zend-studio-for-eclipse-release-cetera/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2008/01/22/zend-studio-for-eclipse-release-cetera/#comments</comments>
		<pubDate>Tue, 22 Jan 2008 16:24:21 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[pdt]]></category>

		<category><![CDATA[software]]></category>

		<category><![CDATA[unit testing]]></category>

		<category><![CDATA[zend studio]]></category>

		<category><![CDATA[past]]></category>

		<category><![CDATA[integration]]></category>

		<category><![CDATA[java]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[future]]></category>

		<category><![CDATA[eclipse]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2008/01/22/zend-studio-for-eclipse-release-cetera/</guid>
		<description><![CDATA[Dear diary,
I have 2 news for you today.

Today we successfully released Zend Studio for Eclipse.  My contribution to it, beyond PDT commitments, is Sebastian Bergmann&#8217;s PHPUnit testing framework integration plug-in, File Network support, Organize Includes and other parts of Refactoring engine, Code Coverage browser&#8230; well, it seems that&#8217;s it. Maybe several additional, but minor [...]]]></description>
			<content:encoded><![CDATA[<p>Dear diary,</p>
<p>I have 2 news for you today.</p>
<ol>
<li>Today we successfully released <a href="http://www.zend.com/en/products/studio/" title="Zend Studio Home">Zend Studio for Eclipse</a>.  My contribution to it, beyond <a href="http://www.eclipse.org/pdt/" title="Eclipse PDT">PDT</a> commitments, is <a href="http://sebastian-bergmann.de/" title="SB">Sebastian Bergmann</a>&#8217;s <a href="http://www.phpunit.de/" title="PHPUnit">PHPUnit</a> testing framework integration plug-in, File Network support, Organize Includes and other parts of Refactoring engine, Code Coverage browser&#8230; well, it seems that&#8217;s it. Maybe several additional, but minor things. Enjoy, guys. This is really a great (and some say - the best) PHP IDE.</li>
<li>Occasionally, these are my last days at <a href="http://www.zend.com/">Zend Technologies</a>. Since next week I&#8217;m starting at <a href="http://www.nielsen-online.com/" title="Nielsen Online">Nielsen Online</a> (<a href="http://www.nielsenbuzzmetrics.com/" title="BuzzMetrics">BuzzMetrics</a>) to do <a href="http://en.wikipedia.org/wiki/Text_mining" title="Text Mining @ WikiPedia">text-mining</a>. If you ask why, the answer is simple - I got bored of Zend, where I spent last 6.5 years of my life, and wanted to do something really new and exciting. I hope it will work <img src='http://dev.eclipse.org/blogs/seva/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> For now I&#8217;m planning to stay an Eclipse committer and continue to help my brothers at Zend to move on.</li>
</ol>
<p><a href="http://sevalapsha.wordpress.com/2008/01/22/zend-studio-for-eclipse-release-cetera/">Source</a></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2008/01/22/zend-studio-for-eclipse-release-cetera/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Dependency Injections in Java 5</title>
		<link>http://dev.eclipse.org/blogs/seva/2007/12/22/dependency-injections-in-java-5/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2007/12/22/dependency-injections-in-java-5/#comments</comments>
		<pubDate>Sat, 22 Dec 2007 19:08:43 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[unit testing]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[java]]></category>

		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2007/12/22/dependency-injections-in-java-5/</guid>
		<description><![CDATA[Recently I&#8217;ve discovered a new &#8220;framework&#8221; which simplifies dependency injections in Java 5. It&#8217;s called  Guice.
Well, what can I say. It indeed has sence. But what I&#8217;m wandering of is you need a framework for this thing. In PHP you can solve the problem in exactly x lines. And certainly don&#8217;t perform at lectures to explain the concept. 
]]></description>
			<content:encoded><![CDATA[<p>Recently I&#8217;ve discovered a new &#8220;framework&#8221; which simplifies dependency injections in Java 5. It&#8217;s called  <a HREF="http://code.google.com/p/google-guice/" TITLE="Google Guice">Guice</a>.</p>
<p>Well, what can I say. It indeed has sence. But what I&#8217;m wandering of is you need a framework for this thing. In PHP you can solve the problem in exactly <i>x</i> lines. And certainly don&#8217;t perform at lectures to explain the concept. <img src='http://dev.eclipse.org/blogs/seva/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2007/12/22/dependency-injections-in-java-5/feed/</wfw:commentRss>
		</item>
		<item>
		<title>PDT Resource Containers Include Paths</title>
		<link>http://dev.eclipse.org/blogs/seva/2007/12/16/pdt-resource-containers-include-paths/</link>
		<comments>http://dev.eclipse.org/blogs/seva/2007/12/16/pdt-resource-containers-include-paths/#comments</comments>
		<pubDate>Sun, 16 Dec 2007 17:14:55 +0000</pubDate>
		<dc:creator>Seva Lapsha</dc:creator>
		
		<category><![CDATA[zend studio]]></category>

		<category><![CDATA[pdt]]></category>

		<category><![CDATA[development]]></category>

		<category><![CDATA[eclipse]]></category>

		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://dev.eclipse.org/blogs/seva/2007/12/16/pdt-resource-containers-include-paths/</guid>
		<description><![CDATA[Last week I have been working on extending of Include Path Libraries management in PDT and Zend Studio for Eclipse (Neon). The change won&#8217;t be released either in PDT 1.0.2 or in Zend Studio for Eclipse GA, but in the next ones (since it changed almost every aspect of products&#8217; functionality).
The change&#8217;s idea is very [...]]]></description>
			<content:encoded><![CDATA[<p>Last week I have been working on extending of Include Path Libraries management in <a TITLE="PHP Development Tools" HREF="http://en.wikipedia.org/wiki/PHP_Development_Tools">PDT</a> and <a TITLE="Zend Studio for Eclipse (Neon)" HREF="http://www.zend.com/en/products/studio/eclipse/">Zend Studio for Eclipse (Neon)</a>. The change won&#8217;t be released either in PDT 1.0.2 or in Zend Studio for Eclipse GA, but in the next ones (since it changed almost every aspect of products&#8217; functionality).</p>
<p>The change&#8217;s idea is very trivial - until now you had the project&#8217;s root as a unchangeable default include path and ability to attach another project roots as additional include paths (variable and library functionality is not changed, except several minor bug fixes). And the point is to make the default visible and removable and to allow addition of specific folders both under same project and other PHP projects.  Seems simple, huh? Well, it&#8217;s not so much.</p>
<p>The main change is very quick indeed - just replace <a TITLE="org.eclipse.core.resources.IProject" HREF="http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/core/resources/IProject.html">IProject</a> references with <a TITLE="org.eclipse.core.resources.IContainer" HREF="http://help.eclipse.org/help32/index.jsp?topic=/org.eclipse.platform.doc.isv/reference/api/org/eclipse/core/resources/IContainer.html">IContainer</a> ones, handle properties serialization etc. and you are there. However when you think a bit about the model (classes, functions, constants) it comes that element beyond the specified folders should be invisible from within the project. Thus it was a need to implement a project&#8217;s model filtered wrapper, which efficiently cuts the unneeded elements from the model. Also include path order is relevant from now, which affects debugger execution. That&#8217;s about all the changes which affect PDT.</p>
<p>However, when Zend Studio for Eclipse comes to a picture, it becomes even more complicated. First of all, you have File Network in it, which is a graph of all PHP files connected by <a TITLE="PHP include/require" HREF="http://www.php.net/require">include/require</a> statements. Second you have Organize Includes, Refactoring Move/Rename of file/folder and at last - include content assist (code completion). All of these should respect the change in configuration and also reflect the configuration change in reasonable time.</p>
<p>This time I won&#8217;t go deep into implementation, because it&#8217;s less interesting by itself and limit myself with just a brief demo:</p>
<p><a TITLE="PDT Resource COntainers Include Paths Demo" HREF="http://www.screencast.com/t/IpKZCZYPlme"><img ALT="Demo Thumbnail" SRC="http://content.screencast.com/media/2d895424-c8ac-4fc3-96d9-220f6f06f8b0_45fb97cd-3c9f-43c2-8bbb-65592598d32e_static_0_0_Thumbnail.jpg" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://dev.eclipse.org/blogs/seva/2007/12/16/pdt-resource-containers-include-paths/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
