<?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>Join the Kearneyville &#187; work</title>
	<atom:link href="http://kearneyville.com/category/work/feed/" rel="self" type="application/rss+xml" />
	<link>http://kearneyville.com</link>
	<description>Land of the Kearneys</description>
	<lastBuildDate>Thu, 15 Jul 2010 01:29:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='kearneyville.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/e6be8fbfa112ed30e15296f48823437b?s=96&#038;d=http://s2.wp.com/i/buttonw-com.png</url>
		<title>Join the Kearneyville &#187; work</title>
		<link>http://kearneyville.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://kearneyville.com/osd.xml" title="Join the Kearneyville" />
	<atom:link rel='hub' href='http://kearneyville.com/?pushpress=hub'/>
		<item>
		<title>Do not use private if you write frameworks</title>
		<link>http://kearneyville.com/2010/06/24/do-not-use-private-if-you-write-frameworks/</link>
		<comments>http://kearneyville.com/2010/06/24/do-not-use-private-if-you-write-frameworks/#comments</comments>
		<pubDate>Thu, 24 Jun 2010 19:36:43 +0000</pubDate>
		<dc:creator>bryankearney</dc:creator>
				<category><![CDATA[candlepin]]></category>
		<category><![CDATA[geek stuff]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://kearneyville.com/?p=123</guid>
		<description><![CDATA[If you write a framework, please do not use private. You may think that you know how I am going to use it. I promise, if it works as it should I will not try and override the basic functionality. However, if I am looking at the code to know it is private then I <a href="http://kearneyville.com/2010/06/24/do-not-use-private-if-you-write-frameworks/" class="excerpt-more-link">[&#8230;]</a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=123&subd=bryankearney&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>If you write a framework, please do not use private. You may think that you know how I am going to use it. I promise, if it works as it should I will not try and override the basic functionality. However, if I am looking at the code to know it is private then I have a use case you did not expect.</p>
<p>My current example is rails active resource. This is a great framework if you are planning to use it to talk to another rails app. If your url does not end in .json then you have to override / reimplement many high level methods because of one or two private methods.</p>
<p>I know they teach you this in school. I know it makes you feel smart. Stop it. Private methods makes your frameworks less usable and less extensible.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bryankearney.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryankearney.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bryankearney.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryankearney.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bryankearney.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryankearney.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bryankearney.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryankearney.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bryankearney.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryankearney.wordpress.com/123/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=123&subd=bryankearney&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://kearneyville.com/2010/06/24/do-not-use-private-if-you-write-frameworks/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4c56a3b7521998dbeb492443bc9e514d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bryankearney</media:title>
		</media:content>
	</item>
		<item>
		<title>Need help testing new libvirt java bindings</title>
		<link>http://kearneyville.com/2010/05/19/need-help-testing-new-libvirt-java-bindings/</link>
		<comments>http://kearneyville.com/2010/05/19/need-help-testing-new-libvirt-java-bindings/#comments</comments>
		<pubDate>Wed, 19 May 2010 17:02:03 +0000</pubDate>
		<dc:creator>bryankearney</dc:creator>
				<category><![CDATA[geek stuff]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://kearneyville.com/?p=114</guid>
		<description><![CDATA[I have moved the java bindings for libvirt up to 0.8.1. It is mostly cut and paste code, but the test driver does not support some of the new features so I would appreciate if someone could bang on them a bit. Specifically, I would like to see someone try out: Snapshots Streams (Callbacks in <a href="http://kearneyville.com/2010/05/19/need-help-testing-new-libvirt-java-bindings/" class="excerpt-more-link">[&#8230;]</a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=114&subd=bryankearney&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>I have moved the java bindings for libvirt up to 0.8.1. It is mostly cut and paste code, but the test driver does not support some of the new features so I would appreciate if someone could bang on them a bit. Specifically, I would like to see someone try out:</p>
<p>Snapshots<br />
Streams (Callbacks in particular)<br />
Secrets</p>
<p>I have put an SRPM out at [1] and a compiled jar at [2]. You can always clone the repo at [3] and build it from there.</p>
<p>Thanks!</p>
<p>[1] http://bkearney.fedorapeople.org/libvirt-java-0.4.5-ALPHA.fc12.src.rpm<br />
[2] http://bkearney.fedorapeople.org/libvirt-0.4.5.ALPHA.jar<br />
[3] http://www.libvirt.org/git/?p=libvirt-java.git;a=summary</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bryankearney.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryankearney.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bryankearney.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryankearney.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bryankearney.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryankearney.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bryankearney.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryankearney.wordpress.com/114/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bryankearney.wordpress.com/114/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryankearney.wordpress.com/114/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=114&subd=bryankearney&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://kearneyville.com/2010/05/19/need-help-testing-new-libvirt-java-bindings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4c56a3b7521998dbeb492443bc9e514d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bryankearney</media:title>
		</media:content>
	</item>
		<item>
		<title>Rest: Going from Simple to Good</title>
		<link>http://kearneyville.com/2010/03/25/rest-going-from-simple-to-good/</link>
		<comments>http://kearneyville.com/2010/03/25/rest-going-from-simple-to-good/#comments</comments>
		<pubDate>Thu, 25 Mar 2010 16:31:31 +0000</pubDate>
		<dc:creator>bryankearney</dc:creator>
				<category><![CDATA[candlepin]]></category>
		<category><![CDATA[geek stuff]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[FOSS]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[State Transition]]></category>

		<guid isPermaLink="false">http://kearneyville.com/?p=112</guid>
		<description><![CDATA[We have been playing alot more with Rest at work, and we are seeing that there is alot of docs on how easy it is to spin up a REST interface. However, there is not much on how to make them good. Fortunately, I work with alot of smart people we can have good discussions <a href="http://kearneyville.com/2010/03/25/rest-going-from-simple-to-good/" class="excerpt-more-link">[&#8230;]</a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=112&subd=bryankearney&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>We have been playing alot more with Rest at work, and we are seeing that there is alot of docs on how easy it is to spin up a REST interface. However, there is not much on how to make them good. Fortunately, I work with alot of smart people we can have good discussions with. Bill Burke has put up the results of one of the discussions on a good way of modeling state transitions on rest. Check out his post <a href="http://bill.burkecentral.com/2010/03/25/modeling-operations-in-rest/"> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bryankearney.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryankearney.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bryankearney.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryankearney.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bryankearney.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryankearney.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bryankearney.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryankearney.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bryankearney.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryankearney.wordpress.com/112/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=112&subd=bryankearney&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://kearneyville.com/2010/03/25/rest-going-from-simple-to-good/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4c56a3b7521998dbeb492443bc9e514d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bryankearney</media:title>
		</media:content>
	</item>
		<item>
		<title>Rest, I dont think I get it</title>
		<link>http://kearneyville.com/2010/03/01/rest-i-dont-think-i-get-it/</link>
		<comments>http://kearneyville.com/2010/03/01/rest-i-dont-think-i-get-it/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 20:03:39 +0000</pubDate>
		<dc:creator>bryankearney</dc:creator>
				<category><![CDATA[geek stuff]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://kearneyville.com/?p=109</guid>
		<description><![CDATA[I sent this as an internal email.. but figured I would post the question as well. File this into the &#8220;I dont get it&#8221; category. Not as bad as Google Wave, but close. So.. I hear that Rest is a panacea, but mostly because it is &#8220;Rest not SOAP&#8221;. I actually understand many of the <a href="http://kearneyville.com/2010/03/01/rest-i-dont-think-i-get-it/" class="excerpt-more-link">[&#8230;]</a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=109&subd=bryankearney&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>I sent this as an internal email.. but figured I would post the question as well. File this into the &#8220;I dont get it&#8221; category. Not as bad as Google Wave, but close.</p>
<p>So.. I hear that Rest is a panacea, but mostly because it is &#8220;Rest not SOAP&#8221;. I actually understand many of the benefits that REST is gives you:</p>
<p>1) I can use a simple http client to access resources, therefore it is easier to adopt.<br />
2) I inherit alot of the WS-* enhancements from the underlieing http transport, so the frameworks are lighter weight.<br />
3) The ability to use the service both by a client and a browser.. mashups become easy.</p>
<p>What I keep getting hung up on is the absence of a formal description of the interface. I see WADL, but whenever I dig into this it seems to get brushed aside as a nuisance. If i want to write typed clients, then I need to have some formal contract of what can be passed in and what is returned. This contract seems to be what alot of the cruft around SOAP is for. Is there something I am missing with this? The answer the books/articles seem to give is &#8220;who needs a formal spec, it is all URI&#8217;s&#8221;. This tends to be a load of hooey, since some clients (rails in particular) do not handle nicely objects of the same type with heterogeneous data sets.</p>
<p>So.. it seems like Rest (which is not SOAP) makes it easy for the easy clients by skimping on the tools for the more complex clients. I can easily do jersey -&gt; jersey, and I presume Resteasy -&gt; Resteasy. But w/o that neutral definition.. cross implementation clients (robust ones) are actually harder.</p>
<p>Am I missing something?</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bryankearney.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryankearney.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bryankearney.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryankearney.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bryankearney.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryankearney.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bryankearney.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryankearney.wordpress.com/109/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bryankearney.wordpress.com/109/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryankearney.wordpress.com/109/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=109&subd=bryankearney&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://kearneyville.com/2010/03/01/rest-i-dont-think-i-get-it/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4c56a3b7521998dbeb492443bc9e514d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bryankearney</media:title>
		</media:content>
	</item>
		<item>
		<title>Latest RHQ: 3.0.0 Build 3</title>
		<link>http://kearneyville.com/2010/02/23/latest-rhq-3-0-0-build-3/</link>
		<comments>http://kearneyville.com/2010/02/23/latest-rhq-3-0-0-build-3/#comments</comments>
		<pubDate>Tue, 23 Feb 2010 13:50:04 +0000</pubDate>
		<dc:creator>bryankearney</dc:creator>
				<category><![CDATA[rhq]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://kearneyville.com/?p=103</guid>
		<description><![CDATA[Another good release from the RHQ team. You can check out the new release here. Lots of new alerting work, and some good performance enhancements. Check it out.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=103&subd=bryankearney&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>Another good release from the RHQ team. You can check out the new release <a href="http://rhq-project.org/display/RHQ/Download"> here</a>. Lots of new alerting work, and some good performance enhancements. Check it out.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bryankearney.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryankearney.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bryankearney.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryankearney.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bryankearney.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryankearney.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bryankearney.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryankearney.wordpress.com/103/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bryankearney.wordpress.com/103/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryankearney.wordpress.com/103/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=103&subd=bryankearney&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://kearneyville.com/2010/02/23/latest-rhq-3-0-0-build-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4c56a3b7521998dbeb492443bc9e514d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bryankearney</media:title>
		</media:content>
	</item>
		<item>
		<title>Latest RHQ Build:l 3.0.0 Build 2</title>
		<link>http://kearneyville.com/2010/02/02/latest-rhq-buildl-3-0-0-build-2/</link>
		<comments>http://kearneyville.com/2010/02/02/latest-rhq-buildl-3-0-0-build-2/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 01:42:45 +0000</pubDate>
		<dc:creator>bryankearney</dc:creator>
				<category><![CDATA[geek stuff]]></category>
		<category><![CDATA[rhq]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://kearneyville.com/?p=101</guid>
		<description><![CDATA[The second community build for RHQ has landed. You can download it from http://rhq-project.org/display/RHQ/Download and check out the release notes at http://rhq-project.org/display/RHQ/Release+Notes+3.0.0.B02. There is lots of goodness here including better content management, better alerting, and other stuff you will have to play with to see. Come on bye, and check it out. Better yet&#8230; contributions <a href="http://kearneyville.com/2010/02/02/latest-rhq-buildl-3-0-0-build-2/" class="excerpt-more-link">[&#8230;]</a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=101&subd=bryankearney&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>The second community build for RHQ has landed. You can download it from http://rhq-project.org/display/RHQ/Download and check out the release notes at http://rhq-project.org/display/RHQ/Release+Notes+3.0.0.B02. There is lots of goodness here including better content management, better alerting, and other stuff you will have to play with to see. Come on bye, and check it out. Better yet&#8230; contributions are welcome.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bryankearney.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryankearney.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bryankearney.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryankearney.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bryankearney.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryankearney.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bryankearney.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryankearney.wordpress.com/101/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bryankearney.wordpress.com/101/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryankearney.wordpress.com/101/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=101&subd=bryankearney&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://kearneyville.com/2010/02/02/latest-rhq-buildl-3-0-0-build-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4c56a3b7521998dbeb492443bc9e514d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bryankearney</media:title>
		</media:content>
	</item>
		<item>
		<title>Cobbler Settings Lens for Augeas</title>
		<link>http://kearneyville.com/2009/12/22/cobbler-settings-lens-for-augeas/</link>
		<comments>http://kearneyville.com/2009/12/22/cobbler-settings-lens-for-augeas/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 00:23:16 +0000</pubDate>
		<dc:creator>bryankearney</dc:creator>
				<category><![CDATA[geek stuff]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[augeas]]></category>
		<category><![CDATA[cobbler]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[regex]]></category>

		<guid isPermaLink="false">http://kearneyville.com/?p=93</guid>
		<description><![CDATA[After much help from David Lutterkort, I have a first cut of an Augeas lens for Cobbler . The settings file is basically a single YAML document, so this lens could be used to do generic yaml processing, but I would assume it would need some tweaks before then. I figure it is best to <a href="http://kearneyville.com/2009/12/22/cobbler-settings-lens-for-augeas/" class="excerpt-more-link">[&#8230;]</a><img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=93&subd=bryankearney&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>After much help from David Lutterkort, I have a first cut of an <a href="http://www.augeas.net">Augeas</a> lens for <a href="https://fedorahosted.org/cobbler/"> Cobbler </a>. The settings file is basically a single YAML document, so this lens could be used to do generic yaml processing, but I would assume it would need some tweaks before then. </p>
<p>I figure it is best to get the first cut out there though. So here it is.</p>
<pre style="background:#EEEEEE none repeat scroll 0 0;border:1px dashed #666666;overflow:auto;line-height:1.1em;color:#000000;padding:15px 20px;">
(*
	Parse the /etc/cobbler/settings file  which is in
	YAML 1.0 format.

	The lens can handle the following contructs
	* key: value
	* key: "value"
	* key: 'value'
	* key: [value1, value2]
	* key:
	   - value1
	   - value2
	* key:
	   key2: value1
	   key3: value2 

	Author: Bryan Kearney

	About: License
	  This file is licensed under the LGPLv2+, like the rest of Augeas.
*)
module CobblerSettings =
	autoload xfm

	let kw = /[a-zA-Z0-9_]+/
	(* TODO Would be better if this stripped off the " and ' chracters *)
	let kv = /([^]['", \t\n#:@-]+|"[^"\n]*"|'[^'\n]*')/ 

	let lbr = del /\[/ "["
	let rbr = del /\]/ "]"
	let colon = del /:[ \t]*/ ": "
	let dash = del /-[ \t]*/ "- "
	(* let comma = del /,[ \t]*(\n[ \t]+)?/ ", " *)
	let comma = del /[ \t]*,[ \t]*/ ", "

	let eol_only = del /\n/ "\n"

	(* TODO Would be better to make items a child of a document *)
	let docmarker = /-{3}/

	let eol   = Util.eol
	let comment = Util.comment
	let empty   = Util.empty
	let indent = del /[ \t]+/ "\t"
	let ws = del /[ \t]*/ " "

	let value_list = Build.opt_list [label "item" . store kv] comma
	let setting = [key kw . colon . store kv] . eol
	let simple_setting_suffix = store kv . eol
	let setting_list_suffix =  [label "sequence" . lbr . ws . (value_list . ws)? . rbr ] . eol
	let indendented_setting_list_suffix =  eol_only . (indent . setting)+
    let indented_list_suffix =  [label "list" . eol_only . ([ label "value" . indent . dash  . store kv] . eol)+]

    (* Break out setting because of a current bug in augeas *)
	let nested_setting = [key kw . colon . (
											(* simple_setting_suffix | *)
											setting_list_suffix |
											indendented_setting_list_suffix |
											indented_list_suffix
											)
						]

	let document = [label "---" . store docmarker] . eol    

	let lns = (document | comment | empty | setting | nested_setting )*
    (* let lns = (setting)* *)

	let xfm = transform lns (incl "/etc/cobbler/settings") 

	(*
	test lns  get "" = ?
	test lns  get "Simple_Setting: Value \n" = ?
	test lns  get "Simple_Setting2: 'Value2@acme.com' \n" = ?
	test lns  get "Simple_Setting3: ''\n" = ?
	test lns  get "Simple_Setting4: \"\"\n" = ?
	test lns  get "Setting_List:[Value1, Value2, Value3]\n" = ?
	test lns  get "Empty_Setting_List: []\n" = ?
	test lns  get "# Commented_Out_Setting: 'some value'\n" = ?
	test lns  get "---\n" = ?
	test lns  get "Nested_Setting:\n Test: Value\n" = ?
	test lns  get "Nested_Setting:\n - Test \n" = ?
	let  cset = Sys.read_file "/etc/cobbler/settings"
	test lns  get cset = ?
    *)
(* Local Variables: *)
(* mode: caml *)
(* End: *)
</pre>
<p>My next steps will be to clean this up, and to submit it along with some tests.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bryankearney.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryankearney.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bryankearney.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryankearney.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bryankearney.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryankearney.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bryankearney.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryankearney.wordpress.com/93/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bryankearney.wordpress.com/93/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryankearney.wordpress.com/93/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=93&subd=bryankearney&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://kearneyville.com/2009/12/22/cobbler-settings-lens-for-augeas/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4c56a3b7521998dbeb492443bc9e514d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bryankearney</media:title>
		</media:content>
	</item>
		<item>
		<title>RHQ Build 1.4.0.B01</title>
		<link>http://kearneyville.com/2009/12/11/rhq-build-1-4-0-b01/</link>
		<comments>http://kearneyville.com/2009/12/11/rhq-build-1-4-0-b01/#comments</comments>
		<pubDate>Fri, 11 Dec 2009 16:26:00 +0000</pubDate>
		<dc:creator>bryankearney</dc:creator>
				<category><![CDATA[geek stuff]]></category>
		<category><![CDATA[rhq]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[open source]]></category>

		<guid isPermaLink="false">http://kearneyville.com/?p=89</guid>
		<description><![CDATA[My new project at work put out it&#8217;s latest open source release. You can learn about it in this here If folks are looking to contribute to a very successful open source Java management project I suggest coming over and taking a look.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=89&subd=bryankearney&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<p>My new project at work put out it&#8217;s latest open source release. You can learn about it in this<a href="http://www.rhq-project.org/display/RHQ/2009/12/11/Developer+Release+1.4.0-B01"> here</a> If folks are looking to contribute to a very successful open source Java management project I suggest coming over and taking a look.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/bryankearney.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/bryankearney.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/bryankearney.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/bryankearney.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/bryankearney.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/bryankearney.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/bryankearney.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/bryankearney.wordpress.com/89/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/bryankearney.wordpress.com/89/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/bryankearney.wordpress.com/89/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=kearneyville.com&blog=4478569&post=89&subd=bryankearney&ref=&feed=1" />]]></content:encoded>
			<wfw:commentRss>http://kearneyville.com/2009/12/11/rhq-build-1-4-0-b01/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/4c56a3b7521998dbeb492443bc9e514d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">bryankearney</media:title>
		</media:content>
	</item>
	</channel>
</rss>