<?xml version="1.0" encoding="UTF-8"?>
<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/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>The whole nine yards</title>
	<atom:link href="http://9yards.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://9yards.wordpress.com</link>
	<description>my blog about everything on the universe</description>
	<lastBuildDate>Mon, 21 Jun 2010 05:21:58 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='9yards.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>The whole nine yards</title>
		<link>http://9yards.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://9yards.wordpress.com/osd.xml" title="The whole nine yards" />
	<atom:link rel='hub' href='http://9yards.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Shell Parse Order: Breaking the rules</title>
		<link>http://9yards.wordpress.com/2010/06/21/shell-parse-order-breaking-the-rules/</link>
		<comments>http://9yards.wordpress.com/2010/06/21/shell-parse-order-breaking-the-rules/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 05:21:58 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/?p=100</guid>
		<description><![CDATA[Rules are meant to be broken, hence the Shell parsing order. There might need arises to skip some of the steps in shell parsing order mentioned in my previous post and we use Quotes ( single &#38; double quotes ) or &#8216;eval&#8217; command to skip or redo the steps in the parsing order. Double quotes [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=100&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Rules are meant to be broken, hence the Shell parsing order.</p>
<p>There might need arises to skip some of the steps in shell parsing order mentioned in my <a href="http://9yards.wordpress.com/2010/02/09/understanding-the-shell-parsing-order/" target="_blank">previous post</a> and we use Quotes ( single &amp; double quotes ) or &#8216;eval&#8217; command to skip or redo the steps in the parsing order.</p>
<p><strong>Double quotes (&#8220;):</strong></p>
<p>Double quotes would run through steps 1, 6, 7, 8 from the <a href="http://9yards.wordpress.com/2010/02/09/understanding-the-shell-parsing-order/" target="_blank">parsing order</a> before execution. ie.</p>
<p>1. Tokenize</p>
<p>6. Parameter Substitution</p>
<p>7. Command Substitution</p>
<p>8. Arithmetic Expression</p>
<p><strong>Single Quotes:</strong></p>
<p><strong><span style="font-weight:normal;">Single quotes (&#8216;) would simply skip through all the steps after Tokenize and execute the command.</span></strong></p>
<p><strong>eval:</strong></p>
<p>While quotes have been used to skip through, the &#8216;eval&#8217; command has been used to redo the entire sequence of shell parsing once again. ie. The output from the step 11 would be fed to the step 1 and the entire parsing would happen once again.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/100/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/100/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/100/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=100&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2010/06/21/shell-parse-order-breaking-the-rules/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>Understanding the Shell Parsing Order</title>
		<link>http://9yards.wordpress.com/2010/02/09/understanding-the-shell-parsing-order/</link>
		<comments>http://9yards.wordpress.com/2010/02/09/understanding-the-shell-parsing-order/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 08:03:31 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/?p=90</guid>
		<description><![CDATA[The shell understands the commandline as pipeline and list, * Pipeline is sequence of one or more commands separated by the character &#124; * List is sequence of one or more pipelines separated by one of the operators: ; , &#38; , &#38;&#38; , &#124;&#124; For each pipeline it will perform the following steps before [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=90&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The shell understands the commandline as pipeline and list,</p>
<p>* Pipeline is sequence of one or more commands separated by the character |<br />
* List is sequence of one or more pipelines separated by one of the operators: ; , &amp; , &amp;&amp; , ||</p>
<p>For each pipeline it will perform the following steps before executing the command,</p>
<p><strong>1. Tokenize</strong></p>
<p>Splits the commands into tokens that are separated by the fixed set of metacharacters.<br />
Tokens =&gt; words, keywords, I/O redirectors and semicolons<br />
metacharactes =&gt; space, tab, newline, ;(,),&lt;,&gt;,| and &amp;</p>
<p><strong>2. Compound commands</strong><br />
Checks the first token to see if its a keyword with no quotes or backslashes. It can be opening keyword ( like if , { or () ie. compound command)  or control structure middle ( like then, else, do ) , end ( fi , done )</p>
<p><strong>3. Aliases</strong><br />
Checks the first word of each command against the list of aliases.<br />
3.i) if match is found, substitutes the alias&#8217;s definition and <strong><em>goto Step 1</em></strong><br />
<em> eg. ll becomes &#8216;ls -l *&#8217; ### where alias ll=&#8221;ls -l *&#8221; defined already</em><br />
3.ii) Otherwise <strong><em>goto Step 4</em></strong></p>
<p><strong>4. Brace expansion</strong><br />
Similar to pathname expansion except file names generated need not exist. Its a mechanism by which arbitrary strings may be generated.</p>
<p><em>eg.  a{b,c} becomes ab ac.</em></p>
<p><strong>5. Tilde expansion</strong><br />
If a word begins with an unquoted tilde character ( ~ ), the characters following the tilde are treated as a possible login name.<br />
<em> eg. cd ~joe becomes cd &#8216;/home/joe&#8217;  ### where /home/joe is the $HOME of user joe</em></p>
<p><strong>6. Parameter substitution</strong><br />
The value of the parameter is substituted.<br />
<em> eg. # echo ${HOME}   becomes  &#8216;/home/joe&#8217;</em></p>
<p><strong>7. Command substitution</strong><br />
Command name will be replaced with the standard output of the command . It is of two forms $(string) or `string`.<br />
<em> eg. # `which find` or $(which find) becomes &#8216;/usr/bin/find&#8217;</em></p>
<p><strong>8. Arithmetic expression</strong><br />
Performs evaluation of an arithmetic expression and substitute the results. It is of the form $((string)).<br />
<em> eg.1 	# $(($a+$b)) becomes &#8217;9&#8242;  ### where a=5; b=4</em></p>
<p><em>eg.2 #	$(($(cat /tmp/file1 | wc -l) + $b))  becomes 7         ### calculate no. of lines in /tmp/file1 ( 3 lines ) and add it to the value of $b ( 4 )</em></p>
<p><strong>9. Word splitting</strong><br />
Takes part of the line resulted from parameter, command and arithmetic substitution and splits them into word again using $IFS as delimiters instead of metacharacters used in step 1.</p>
<p>The default value of IFS is exactly [space][tab][newline]</p>
<p><strong>10. Pathname expansion</strong><br />
Also known as filename generation or wildcard expansion. The shell scans for the characters *, ? and [  ie. pattern and replace it with an alphabetically sorted list of file names matching the pattern.<br />
<em> eg.1 # file* becomes &#8216;file1 file2 file3 file1.txt file2.txt file3.txt&#8217;</em></p>
<p><em>eg. 2 #file? becomes file1 file2 file3</em></p>
<p><strong>11. Functions, Built-ins and $PATH</strong></p>
<p>At this stage the command has been already split into words containing a simple command and optional list of arguments. And if that simple command ie. first word, contains no slashes ( not an absolute path ) , the shell will attempt to locate it in the following search order</p>
<p><strong>11.i) Function</strong><br />
If there exists a function by that name, it &#8216;ll be invoked<br />
<strong> 11.ii) Built-in commands</strong><br />
If there exists a built-in command, it &#8216;ll be invoked<br />
<strong> 11.iii) Search $PATH</strong><br />
Finally searches each element of the path for directory containing the command name. The first file found will be chosen.</p>
<p><strong>12. Redirection</strong><br />
Before a command is executed, its input and output may be redirected. Redirection operators &lt; , &gt; , &lt;&lt;, &gt;&gt;<br />
<em> eg. cat /tmp/file1 &gt; /tmp/file2</em></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/90/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=90&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2010/02/09/understanding-the-shell-parsing-order/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>Introducing patternchecker</title>
		<link>http://9yards.wordpress.com/2010/01/24/introducing-patternchecker/</link>
		<comments>http://9yards.wordpress.com/2010/01/24/introducing-patternchecker/#comments</comments>
		<pubDate>Sun, 24 Jan 2010 22:45:38 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[How-do-I]]></category>
		<category><![CDATA[regex]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/?p=62</guid>
		<description><![CDATA[Often I need a small utility script/program to check the matched results of regex pattern against known text. So I dont have to execute my lengthy main script/program multiple times to get the correct pattern. I&#8217;ve used the following patternchecker script (PERL) &#38; program (JAVA) while coming up with patterns and for demonstration in my [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=62&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Often I need a small utility script/program to check the matched results of regex pattern against known text. So I dont have to execute my lengthy main script/program multiple times to get the correct pattern.</p>
<p>I&#8217;ve used the following patternchecker script (PERL) &amp; program (JAVA) while coming up with patterns and for demonstration in my <a href="http://9yards.wordpress.com/2010/01/24/regular-expressions-the-rules/" target="_blank">previous posts</a>.</p>
<p>Usage:<br />
# java patterncheck<br />
Enter pattern : (x*)(x)(x+)<br />
Enter string:foxxxxx<br />
Matched : fo&lt;&lt;&lt; xxxxx &gt;&gt;&gt;<br />
group 1 = xxx<br />
group 2 = x<br />
group 3 = x</p>
<p>Perl and Java uses the same regex engine and thus would behave similarly while matching patterns, I&#8217;ve listed here the sourcecode in perl and java out of my curiosity although you just need any one of them,</p>
<p>i) perl</p>
<p><pre class="brush: perl;">
#!/usr/bin/perl
print &quot;Enter pattern :&quot;;
### Read the regex pattern
chomp($pattern=&lt;STDIN&gt;);

### count the number of paranthesis
$cnt++ while( $pattern =~ /\(/g );
print &quot;Enter string :&quot;;
chomp($input=&lt;STDIN&gt;);

### read the string to be tested against
if ( $input =~ /$pattern/ ){

      ### print prematch, match, postmatch
      print &quot;Matched: $`&lt;&lt;&lt; $&amp; &gt;&gt;&gt; $'\n&quot;;

      ### print $1, $2, etc
      foreach $i (1..${cnt}) { print &quot;\$&quot;,$i,&quot; = &quot;,${$i},&quot;\n&quot;;}
} else {
      print &quot;No Match\n&quot;;
}
&lt;div&gt;</pre></p>
<p>ii) java</p>
<p><pre class="brush: java;">
import java.lang.*;
import java.io.*;
import java.util.regex.*;

public class patterncheck{
	public static void main(String args[]){
		String pattern, str;
		int groups;

		//Read pattern and string from the console
		Console c = System.console();
		pattern=c.readLine(&quot;%s&quot;,&quot;Enter pattern :&quot;);
		str=c.readLine(&quot;%s&quot;,&quot;Enter string:&quot;);

		//compile and associate the pattern with the text
		Pattern p = Pattern.compile(pattern);
		Matcher m = p.matcher(str);

		//if there is a match
		if (m.find()){
			// print prematch, match &amp; postmatch
			System.out.println(&quot;Matched : &quot;+str.substring(0,m.start())+&quot;&lt;&lt;&lt; &quot;+ m.group() +&quot; &gt;&gt;&gt;&quot;+str.substring(m.end()));

			// print what captured in paranthesis
			if (m.groupCount() != 0) {
				groups=m.groupCount();
				for (int i=1;i&lt;=groups;i++){
					System.out.println(&quot;group &quot;+i+&quot; = &quot;+m.group(i));
				}
			}
		}
		else {
			System.out.println(&quot;No Match&quot;);
		}
	}
}
</pre></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/62/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/62/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/62/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=62&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2010/01/24/introducing-patternchecker/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>Regular Expressions: Icebreakers</title>
		<link>http://9yards.wordpress.com/2010/01/24/regular-expressions-icebreakers/</link>
		<comments>http://9yards.wordpress.com/2010/01/24/regular-expressions-icebreakers/#comments</comments>
		<pubDate>Sun, 24 Jan 2010 20:39:26 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[Sun]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/2010/01/24/regular-expressions-icebreakers/</guid>
		<description><![CDATA[Few days back, there was a knowledge session on regular expressions within my team. After discussing the usual topics like greedy &#38; lazy quantifiers, backreferences, etc, we started analyzing match results for few expressions. I &#8216;ve familiarity with regex and used them in majority of my throw-away scripts and I thought I knew regex unless [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=37&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Few days back, there was a knowledge session on regular expressions within my team. After discussing the usual topics like greedy &amp; lazy quantifiers, backreferences, etc, we started analyzing match results for few expressions. I &#8216;ve familiarity with regex and used them in majority of my throw-away scripts and I thought I knew regex unless been baffled with the simple questions from the team. I list down few of those simplest of the simple patterns and what they match and why ( which actually led to me learn the<a href="/hariblog/entry/regular_expressions_the_rules" target="_blank"> rules</a> of the game),</p>
<p>Before even starting to look at them, did I mentioned earlier that regex engine would start its search just before the first character of the string ? If not, let me tell you now, it need to start before the first character, if and all the patterns  contains anchors ( ^, \b, etc ), it needs to check them too. And the search would go beyond the last character in the string and now you know why ( to match $, \b, etc ).</p>
<p>(i) x*</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">pattern : x*</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">string :foxxx</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: &lt;&lt;&lt;  &gt;&gt;&gt; foxxx</p>
<p>Explanation: As mentioned in the rule 2 <a href="/hariblog/entry/regular_expressions_the_rules" target="_blank">here</a>,  the greediness would always try to match more, hence read the pattern &#8216;x*&#8217; as  &#8217;match more occurrence of x or nothing&#8217;. And the engine going to do its search character by character in the string. Since it could not find any &#8216;x&#8217; to match at the starting position, it tries with its other choice &#8216; match nothing&#8217; and it succeeds.</p>
<p>(ii) .*</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">pattern : .*</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">string :foxxx</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: &lt;&lt;&lt; foxxx &gt;&gt;&gt;</p>
<p>Explanation: &#8216;.&#8217; matches anything other than &#8216;\n&#8217;. Though the pattern &#8216;.*&#8217; can be read as &#8216;match more of any characters other than &#8216;\n&#8217; or nothing&#8217;, the rule of greediness gives the preference to match more characters.</p>
<p>(iii) x*</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">pattern : x*</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">string : xxxfoxxx</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: &lt;&lt;&lt; xxx &gt;&gt;&gt; foxxx</p>
<p>Explanation: Same greediness favors the match more criteria.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/37/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/37/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/37/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=37&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2010/01/24/regular-expressions-icebreakers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>Regular Expressions: The Rules</title>
		<link>http://9yards.wordpress.com/2010/01/24/regular-expressions-the-rules/</link>
		<comments>http://9yards.wordpress.com/2010/01/24/regular-expressions-the-rules/#comments</comments>
		<pubDate>Sun, 24 Jan 2010 10:33:19 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[Sun]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/2010/01/24/regular-expressions-the-rules/</guid>
		<description><![CDATA[The following are the rules, a non-POSIX regular expression engine(such as in PERL, JAVA, etc ) would adhere to while attempting to match with the string, Notation: the examples would list the given regex(pattern) , the string tested against (string) and the actual match happened in the string in between &#8216;&#60;&#60;&#60;&#8217; and &#8216;&#62;&#62;&#62;&#8217;. 1. The [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=38&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div style="background-color:#ffffff;border:0 initial initial;">
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><span class="Apple-tab-span" style="white-space:pre;"> </span>The following are the rules, a non-POSIX regular expression engine(such as in PERL, JAVA, etc ) would adhere to while attempting to match with the string,</p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">Notation: the examples would list the given regex(pattern) , the string tested against (string) and the actual match happened in the string in between &#8216;&lt;&lt;&lt;&#8217; and &#8216;&gt;&gt;&gt;&#8217;.</p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><strong>1. The match that begins earliest/leftmost wins.</strong></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;">The intention is to match the cat at the end but the &#8216;cat&#8217; in the catalogue won the match as it appears leftmost in the string.</p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><span style="font-family:'Courier New';">pattern : cat</span></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><span style="font-family:'Courier New';">string :This catalogue has the names of different species of cat.</span></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><span style="font-family:'Courier New';">Matched: This &lt;&lt;&lt; cat &gt;&gt;&gt; alogue has the names of different species of cat.</span></p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;"><span style="font-weight:bold;">1a.The leftmost match in the string wins, irrespective of the order a pattern appears in alternation</span></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;">Though last in the alternation, &#8216;catalogue&#8217; got the match as it appeared leftmost among the patterns in the alternation.</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">pattern :species|names|catalogue</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">string :This catalogue has the names of different species of cat.</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: This &lt;&lt;&lt; catalogue &gt;&gt;&gt;  has the names of different species of cat.</p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><strong>1b. If there are more than one plausible match occurs in the same position, then the order of the plausible matching patterns in the alternation counts.</strong></p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">All three patterns have a possible match at the same position, but &#8216;over&#8217; is successful as it appeared first in the alternation.</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">pattern : over|o|overnight</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">string :Actually, I&#8217;m an overnight success. But it took twenty years.</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: Actually, I&#8217;m an &lt;&lt;&lt; over &gt;&gt;&gt; night success. But it took twenty years.</p>
<p style="font:normal normal normal 12px/normal 'Courier New';min-height:14px;margin:0;"><span style="font-family:Helvetica;"><span style="font-family:'Courier New';"><br />
</span></span></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><strong>2. The standard quantifiers (* +, ? and {m,n}) are greedy</strong></p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">Greediness (*,+,?) would always try to match more before it tries to match minimum characters needed for the match to be successful ( &#8217;0&#8242; for *,? ; &#8217;1&#8242; for + )</p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;">The intention is to match the &#8220;Joy is prayer&#8221;, though .* went pass across all the double quotes and grabbing all the strings only to match the last double quote (&#8220;).</p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;"><span style="font-family:'Courier New';">pattern :&#8221;.*&#8221;</span></p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">string :&#8221;Joy is prayer&#8221;.&#8221;Joy is strength&#8221;.&#8221;Joy is Love&#8221;.</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: &lt;&lt;&lt; &#8220;Joy is prayer&#8221;.&#8221;Joy is strength&#8221;.&#8221;Joy is Love&#8221; &gt;&gt;&gt; .</p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><strong>2a. Lazy quantifiers would  favor the minimum match</strong></p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">Laziness (*?,+?,??) would always try to settle with minimum characters needed for the match to be successful before it tries to match the maximum.</p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;">The first double quote (&#8216;) appeared was matched using lazy quantifier.</p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><span style="font-family:'Courier New', courier, monospace;">pattern :&#8221;.*?&#8221;</span></p>
<p><span style="font-family:'courier new',courier,monospace;"> </span></p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;"><span style="font-family:'courier new',courier,monospace;">string :&#8221;Joy is prayer&#8221;.&#8221;Joy is strength&#8221;.&#8221;Joy i<br />
s Love&#8221;.</span></p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;"><span style="font-family:'courier new',courier,monospace;">Matched: &lt;&lt;&lt; &#8220;Joy is prayer&#8221; &gt;&gt;&gt; .&#8221;Joy is strength&#8221;.&#8221;Joy is Love&#8221;.<span style="font-family:'courier new', courier, monospace;font-size:medium;"> </span></span></p>
<p><span style="font-family:'courier new',courier,monospace;"> </span></p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;"><strong>2b. The only time the greedy quantifiers would give up what they&#8217;ve matched earlier and settle for less is &#8216;when matching too much ends up causing some later part of the regex to fail&#8217;.</strong></p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">The \w* would match the whole word &#8216;regular_expressions&#8217; initially. Later, since &#8216;s&#8217; didn&#8217;t have a character to match and tend to fail would trigger the \w* to backtrack and match one character less. Thus the final &#8216;s&#8217; matches the &#8216;s&#8217; just released by \w* and whole match succeeds.</p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;">Note: Though the pattern would work the same way without paranthesis, I&#8217;d used them to show the individual matches in $1, $2, etc.</p>
<p style="font:normal normal normal 12px/normal Helvetica;min-height:14px;margin:0;"><span style="font-family:'Courier New';">pattern : (\w*)(s)</span></p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">string :regular_expressions</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: &lt;&lt;&lt; regular_expressions &gt;&gt;&gt;</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">$1 = regular_expression</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">$2 = s</p>
<p style="font:normal normal normal 12px/normal 'Courier New';min-height:14px;margin:0;">
<p style="font:normal normal normal 12px/normal 'Courier New';min-height:14px;margin:0;"><span style="font-family:Helvetica;">Similarly, the initial match &#8216;x&#8217; by &#8216;x*&#8217; was given by later for the favor of the last &#8216;x&#8217; in the pattern.</span></p>
<p style="font:normal normal normal 12px/normal 'Courier New';min-height:14px;margin:0;">pattern : (x*)(x)</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">string : ox</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: o&lt;&lt;&lt; x &gt;&gt;&gt;</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">$1 =</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">$2 = x</p>
<p style="font:normal normal normal 12px/normal 'Courier New';min-height:14px;margin:0;"><span style="font-family:Helvetica;"><span style="font-family:'Courier New';"><br />
</span></span></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><strong>2c. When more than one greedy quantifiers appears in a pattern, the first greedy would get the preference.</strong></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;">Though the .* initially matched the whole string, the [0-9]+ would able to grab just one digit &#8217;5&#8242; from the .*, and the 0-9]+ settles with it since that satisfies its minimum match criteriat. Note that the &#8216;+&#8217; is also a greedy quantifier and here it cant grab beyond its minimum requirement, since already there is an another greedy quantifier shares the same match.</p>
<p style="font:normal normal normal 12px/normal 'Courier New';min-height:14px;margin:0;">Enter pattern : (.*)([0-9]+)</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Enter string : Bangalore-560025</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">Matched: &lt;&lt;&lt; Bangalore-560025 &gt;&gt;&gt;</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">$1 = Bangalore-56002</p>
<p style="font:normal normal normal 12px/normal 'Courier New';margin:0;">$2 = 5</p>
<p style="font:normal normal normal 12px/normal 'Courier New';min-height:14px;margin:0;"><span style="font-family:Helvetica;"><span style="font-family:'Courier New';"><br />
</span></span></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;"><strong>3. Overall match takes precedence. </strong></p>
<p style="font:normal normal normal 12px/normal Helvetica;margin:0;">Ability to report a successful match takes precedence. As its shown in previous example, if its necessary for a successful match the quantifiers ( greedy or lazy ) would work in harmony with the rest of the pattern.</p>
</div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/38/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/38/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/38/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=38&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2010/01/24/regular-expressions-the-rules/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>Modify attribute properties in Active Directory</title>
		<link>http://9yards.wordpress.com/2009/10/05/modify-attribute-properties-in-active-directory/</link>
		<comments>http://9yards.wordpress.com/2009/10/05/modify-attribute-properties-in-active-directory/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 10:39:37 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[How-do-I]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/2009/10/05/modify-attribute-properties-in-active-directory/</guid>
		<description><![CDATA[Long long ago, I did an active directory configuration with minor tweaking ( yet not widely documented ) for converting a single-valued attribute to multi-valued attribute. And automated couple of testcases for adding multiple values to an attribute using ldap eway and was living happily till last week. Last week was when one of those [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=39&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Long long ago, I did an active directory configuration with minor tweaking ( yet not widely documented ) for converting a single-valued attribute to multi-valued attribute. And automated couple of testcases for adding multiple values to an attribute using <a href="http://docs.sun.com/app/docs/doc/819-7383" target="_blank">ldap eway</a> and was living happily till last week. </p>
<p>Last week was when one of those unfortunate event had happened ie. the automated tests were failing and with the few minutes of investigation revealed I need to redo the ADS setup in a different m/c due to multiple reasons.&nbsp;</p>
<p>Everything went cool, duplicating the domain data, SSL configuration till I tried to add multiple values to the attribute and only to see the below error in the ldap client,</p>
</p>
<p><span style="color:#ff6600;font-family:arial, helvetica, sans-serif;font-size:19px;font-weight:bold;"><br />
<h1 class="titleHeader" style="display:block;background-image:none;background-repeat:initial;background-attachment:initial;background-color:initial;width:auto;height:auto;color:#ff6600;font-size:19px;margin:0;padding:0;">the attribute cannot be modified because its owned by the system</h1>
<p></span>
</p>
<p>&nbsp;I searched my documents in vain for the tiny-secret-formulae which helped me long back. I was struggling, googling, bing(l)ing for hours and desperately installing few third-party tools hoping it would do the job, finally I stumbled on it,</p>
<p>Down here the steps to convert single-valued attribute to multi-valued attribute,</p>
</p>
<p><span style="font-family:'Trebuchet MS', Verdana, Arial, sans-serif;font-size:13px;line-height:18px;">
<ol>
<li>Login as a member of Schema Admins</li>
<li>Launch LDP.EXE</li>
<li>Connect to the Schema Master using LDP.EXE</li>
<li>Bind to the Schema Master using an account with Schema Admin permissions.</li>
<li>From the Browse menu, choose Modify</li>
<li>In the Modify dialog box, leave the DN field blank, and type&nbsp;<strong>schemaUpgradeInProgress</strong> in the Attribute field. In the Value field, enter the number <strong>1</strong>. Click the Enter button, then click the Run button.</li>
<li>Close the Modify dialog box.</li>
<li>Launch ADSIEDIT.MSC and goto the properties of the attribute here its &#8216;sn&#8217;</li>
<li>Check for the property name &#8216;isSingleValued&#8217; and change the value to False. Click on Apply and close the property window.</li>
<li>Run LDP again, and change the value of schemaUpgradeInProgress from <strong>1</strong> to <strong>0</strong>.</li>
<li>From the Active Directory Schema console, right click on the console and choose &quot;Reload the Schema&quot;</li>
</ol>
<div>Check with your favorite ldap client adding multiple values for the same attribute.</div>
<p></span>
</p></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/39/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/39/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/39/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=39&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2009/10/05/modify-attribute-properties-in-active-directory/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>GlassFish ESB v2.1 AMI for EC2</title>
		<link>http://9yards.wordpress.com/2009/06/23/glassfish-esb-v2-1-ami-for-ec2/</link>
		<comments>http://9yards.wordpress.com/2009/06/23/glassfish-esb-v2-1-ami-for-ec2/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 09:55:55 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[SOA]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/2009/06/23/glassfish-esb-v2-1-ami-for-ec2/</guid>
		<description><![CDATA[Now GlassFish ESB v2.1 is available via Amazon Elastic Compute Cloud ( Amazon EC2 ). To help easily build and secure cloud applications, the GlassFish ESB v2.1 AMI is created on hardened opensolaris . This AMI is installed only with runtime component of the GlassFish ESB v2.1 ie. GlassFish 2.1 server + jbi components, with [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=40&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p> Now <a target="_blank" href="https://open-esb.dev.java.net/Downloads.html">GlassFish ESB v2.1</a> is available via Amazon Elastic Compute Cloud ( Amazon EC2 ). To help easily build and secure cloud applications, the <a target="_blank" href="http://developer.amazonwebservices.com/connect/entry.jspa?externalID=2622">GlassFish ESB v2.1 AMI</a> is created on hardened opensolaris .</p>
<p>This AMI is installed only with runtime component of the GlassFish ESB v2.1 ie. GlassFish 2.1 server + jbi components, with default configurations, for details on port numbers &amp; credentials check the /root/ec2sun/GFESBV21_README. The applications created using the designtime component of the GlassFish ESB v2.1 can be deployed in the EC2 instance using admin console. Port &#8217;4848&#8242; has to be opened in EC2 instance to access the admin console.</p>
<p>   AMI ID: ami-5347a13a  </p>
<p>AMI Manifest: opensolaris-2008.11-gfesb-v2.1.img.manifest.xml</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/40/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/40/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/40/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=40&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2009/06/23/glassfish-esb-v2-1-ami-for-ec2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>Need for Speed: Undercover</title>
		<link>http://9yards.wordpress.com/2009/04/26/need-for-speed-undercover-2/</link>
		<comments>http://9yards.wordpress.com/2009/04/26/need-for-speed-undercover-2/#comments</comments>
		<pubDate>Sun, 26 Apr 2009 23:26:26 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[Personal]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/2009/04/26/need-for-speed-undercover-2/</guid>
		<description><![CDATA[If you are a race-gaming freak, you never could&#8217;ve missed NFS. I&#8217;ve been playing NFS from the Hot Pursuit days and here is my review on the last version Undercover.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=41&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<div align="left">If you are a race-gaming freak, you never could&#8217;ve missed NFS. I&#8217;ve been playing NFS from the <a target="_blank" href="http://en.wikipedia.org/wiki/Need_for_speed#Need_for_Speed_III:_Hot_Pursuit_.281998.29">Hot Pursuit </a>days and here is <a target="_blank" href="http://9yards.wordpress.com/2009/04/26/need-for-speed-undercover/">my review on the last version Undercover</a>. </div>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/41/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/41/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/41/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=41&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2009/04/26/need-for-speed-undercover-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>Need for Speed: Undercover</title>
		<link>http://9yards.wordpress.com/2009/04/26/need-for-speed-undercover/</link>
		<comments>http://9yards.wordpress.com/2009/04/26/need-for-speed-undercover/#comments</comments>
		<pubDate>Sun, 26 Apr 2009 13:27:22 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/?p=21</guid>
		<description><![CDATA[I remember vaguely playing NFS first time around 2000. If I recall it well, I was stunned by the introduction video of the NFS : Hot Pursuit which captivated me to play the game till end, spending countless hours and sleepless nights. Since then my love for that game never faded, almost even after a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=21&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I remember vaguely playing NFS first time around 2000. If I recall it well, I was stunned by the introduction video of the NFS : Hot Pursuit which captivated me to play the game till end, spending countless hours and sleepless nights. Since then my love for that game never faded, almost even after a decade NFS stayed top in my skimpy list of PC games.</p>
<p>One thing about NFS, starting from HOT Pursuit to Underground, <a href="http://blogs.sun.com/Fahrenheit451/entry/nfs_returns" target="_blank">Carbon Canyon</a> to ProStreet, they all resemble a flick either &#8216;the Fast &amp; the Furious&#8217; sequel or &#8216;Gone in sixty seconds&#8217; or you name it. Thats what makes it more interesting.</p>
<p>About NFS undercover:</p>
<p>The cops are back and this time &#8216;You &#8216;re the Cop&#8217;. Hey,  I&#8217;m not trying to confuse, remember though a cop, you&#8217;re in undercover, trying to be one of those bad gangs. The graphics, the plot and the choice of the cars everything is superb as usual. I&#8217;ve already finished the game once and started all again. Till the <a href="http://shift.needforspeed.com/us" target="_blank">NFS:Shift</a> been released, I guess I would play undercover couple of times.</p>
<p>Lets take the wheel, infiltrate them, take them out one by one.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/21/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/21/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/21/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=21&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2009/04/26/need-for-speed-undercover/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
		<item>
		<title>My daughter&#8217;s graduation@Playschool</title>
		<link>http://9yards.wordpress.com/2009/03/05/my-daughters-graduationplayschool/</link>
		<comments>http://9yards.wordpress.com/2009/03/05/my-daughters-graduationplayschool/#comments</comments>
		<pubDate>Thu, 05 Mar 2009 06:10:09 +0000</pubDate>
		<dc:creator>9yards</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://9yards.wordpress.com/?p=13</guid>
		<description><![CDATA[Its a wonderful experience watching your kid&#8217;s first graduation. Even more watching her performance on stage. I&#8217;ve started a blog for her own here where I post all wonderful happening in her life.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=13&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Its a wonderful experience watching your kid&#8217;s first graduation. Even more watching her performance on stage. I&#8217;ve started a blog for her own <a href="http://puppycorn.wordpress.com/" target="_blank">here</a> where I post all wonderful happening in her life.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/9yards.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/9yards.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/9yards.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/9yards.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/9yards.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/9yards.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/9yards.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/9yards.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/9yards.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/9yards.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/9yards.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/9yards.wordpress.com/13/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/9yards.wordpress.com/13/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/9yards.wordpress.com/13/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=9yards.wordpress.com&amp;blog=1344168&amp;post=13&amp;subd=9yards&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://9yards.wordpress.com/2009/03/05/my-daughters-graduationplayschool/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/7839525fe96ae1af5e0251357d9938cc?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">9yards</media:title>
		</media:content>
	</item>
	</channel>
</rss>
