Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(104)

Unified Diff: frog/lib/node/cluster.dart

Issue 9034014: Add support for the node net module. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: new version of minfrog Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: frog/lib/node/cluster.dart
===================================================================
--- frog/lib/node/cluster.dart (revision 0)
+++ frog/lib/node/cluster.dart (revision 0)
@@ -0,0 +1,43 @@
+// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+#library('cluster');
+#import('node.dart');
+
+// module cluster
+
+/**
+ * Note: cluster.fork will fail when run from frogsh. It will succeed
+ * when dart code is compiled to JavaScript, and the resulting
+ * JavaScript is run from node.js.
+ */
+
+typedef void ClusterDeathListener(ChildProcess cp);
+
+class cluster native "require('cluster')" {
+ static void fork() native;
+ static bool isMaster;
+ static bool isWorker;
+
+ // EventEmitter
+ static void removeAllListeners(String event) native;
+ static void setMaxListeners(num n) native;
+ var _listeners(String key)
+ native "return this.listeners(key);";
+
+ // Death event
+ static void emitDeath(ChildProcess cp)
+ native "this.emit('death', cp);";
+ static void addListenerDeath(ClusterDeathListener listener)
+ native "this.addListener('death', listener);";
+ static void onDeath(ClusterDeathListener listener)
+ native "this.on('death', listener);";
+ static void onceDeath(ClusterDeathListener listener)
+ native "this.once('death', listener);";
+ static void removeListenerDeath(ClusterDeathListener listener)
+ native "this.removeListener('death', listener);";
+ static List<ClusterDeathListener> listenersDeath()
+ => new _NativeListPrimitiveElement<ClusterDeathListener>(_listeners(
+ 'death'));
+}

Powered by Google App Engine
This is Rietveld 408576698