summaryrefslogtreecommitdiffstats
path: root/static/talks/bread_board_yapc_na_2012/027.pl.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/talks/bread_board_yapc_na_2012/027.pl.html')
-rw-r--r--static/talks/bread_board_yapc_na_2012/027.pl.html52
1 files changed, 52 insertions, 0 deletions
diff --git a/static/talks/bread_board_yapc_na_2012/027.pl.html b/static/talks/bread_board_yapc_na_2012/027.pl.html
new file mode 100644
index 0000000..81900b4
--- /dev/null
+++ b/static/talks/bread_board_yapc_na_2012/027.pl.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+<title>027.pl</title>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<script>
+function navigate(e) {
+ var keynum = (window.event) // IE
+ ? e.keyCode
+ : e.which;
+ if (keynum == 8) {
+ window.location = "026z" + ".html";
+ return false;
+ }
+ if (keynum == 13 || keynum == 32) {
+ window.location = "028" + ".html";
+ return false;
+ }
+ if (keynum == 73 || keynum == 105) {
+ window.location = "index.html";
+ return false;
+ }
+ return true;
+}
+</script>
+</head>
+<body onkeypress="return navigate(event)">
+<pre> Bread::Board
+
+my $c = container MyApp =&gt; as {
+ service dsn =&gt; 'dbi:mysql:myapp_db';
+ service logger =&gt; (class =&gt; 'Logger', lifecycle =&gt; 'Singleton');
+ service view =&gt; (class =&gt; 'View', dependencies =&gt; ['logger']);
+
+ service model =&gt; (
+ class =&gt; 'Model',
+ dependencies =&gt; ['logger', 'dsn'],
+ block =&gt; sub {
+ my $m = Model-&gt;connect($_[0]-&gt;param('dsn'));
+ $m-&gt;set_logger($_[0]-&gt;param('logger'));
+ return $m;
+ },
+ );
+ service app =&gt; (
+ class =&gt; 'MyApp',
+ dependencies =&gt; ['model', 'view'],
+ );
+};
+$c-&gt;resolve(service =&gt; 'app');
+
+
+</pre>
+</body>