summaryrefslogtreecommitdiffstats
path: root/static/talks/bread_board_yapc_na_2012/006.pl.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/talks/bread_board_yapc_na_2012/006.pl.html')
-rw-r--r--static/talks/bread_board_yapc_na_2012/006.pl.html52
1 files changed, 52 insertions, 0 deletions
diff --git a/static/talks/bread_board_yapc_na_2012/006.pl.html b/static/talks/bread_board_yapc_na_2012/006.pl.html
new file mode 100644
index 0000000..593cc3e
--- /dev/null
+++ b/static/talks/bread_board_yapc_na_2012/006.pl.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+<title>006.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 = "005.pl" + ".html";
+ return false;
+ }
+ if (keynum == 13 || keynum == 32) {
+ window.location = "007" + ".html";
+ return false;
+ }
+ if (keynum == 73 || keynum == 105) {
+ window.location = "index.html";
+ return false;
+ }
+ return true;
+}
+</script>
+</head>
+<body onkeypress="return navigate(event)">
+<pre>package MyApp;
+use MyFramework;
+
+has dsn =&gt; (is =&gt; 'ro', isa =&gt; 'Str', default =&gt; 'dbi:mysql:myapp_db');
+has tt_root =&gt; (is =&gt; 'ro', isa =&gt; 'Str', default =&gt; 'root/template');
+has logger =&gt; (is =&gt; 'ro', isa =&gt; 'Logger', default =&gt; sub {Logger-&gt;new});
+has model =&gt; (
+ is =&gt; 'ro', isa =&gt; 'Model', lazy =&gt; 1,
+ default =&gt; sub {
+ my $m = Model-&gt;connect($_[0]-&gt;dsn);
+ $m-&gt;set_logger($_[0]-&gt;logger);
+ return $m;
+ },
+);
+has view =&gt; (
+ is =&gt; 'ro', isa =&gt; 'View', lazy =&gt; 1,
+ default =&gt; sub {
+ View-&gt;new(logger =&gt; $_[0]-&gt;logger, tt_root =&gt; $_[0]-&gt;tt_root);
+ },
+);
+
+sub call { ... }
+
+
+</pre>
+</body>