- 기본적으로 comet을 이용한 MessageBus로 구현이 되어 있다.
- websocket이 지원이 되면 Errai Bus가 comet이 아닌 WebSocket을 이용한다.
출처 : http://docs.jboss.org/errai/2.2.0.CR1/errai/reference/html_single/#sid-5931280_MessagingAPIBasics-SendingMessageswiththeClientBus
mvn exec:java -Dexec.mainClass="com.vineetmanohar.module.Main"
public void afterPropertiesSet() throws FdlException {
try {
egovProperties = new ExtendedProperties();
// 외부파일이 정의되었을때
if (extFileName != null) {
refreshPropertyFiles();
}
Iterator it = properties.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
String key = (String) entry.getKey();
String value = (String) entry.getValue();
if (EgovPropertyService.LOGGER.isDebugEnabled()) {
EgovPropertyService.LOGGER.debug(messageSource.getMessage(
"debug.properties.property",
new String[] {key, value }, Locale.getDefault()));
}
if (key == null || key.equals("")) {
if (EgovPropertyService.LOGGER.isErrorEnabled())
EgovPropertyService.LOGGER.error(messageSource
.getMessage("error.properties.check.essential",
new String[] {}, Locale.getDefault()));
throw new FdlException(messageSource,
"error.properties.check.essential", null);
}
egovProperties.put(key, value);
}
} catch (Exception e) {
if (e instanceof FdlException)
throw (FdlException) e;
else {
if (EgovPropertyService.LOGGER.isErrorEnabled())
EgovPropertyService.LOGGER.error(messageSource.getMessage(
"error.properties.initialize.reason", new String[] {},
Locale.getDefault()));
throw new FdlException(messageSource,
"error.properties.initialize", e);
}
}
}
egovProperties.put(key, value);
public class Test {
private EgovPropertyService propertiesService;
public void showKeys() {
Iterator keys = soapPropertiesService.getKeys();
while(keys.hasNext()) {
System.out.println(keys.next());
}
}
}
(ns some.namespace
(:require [clojure.contrib.json :as json])
(:use [clojure.string :only [trim lower-case split]]
[clojure.contrib.shell-out]
[clojure.pprint]
[clojure.test]))
(ns rosettacode.24game (:require [clojure.string :as str])) (defn parse-infix-data "input '1+2+3+4' output (1 + 2 + 3 + 4) where the numbers are clojure numbers, and the symbols are clojure operators" [string] (map read-string (next (str/split string #""))))
;; Multiple imports at once.
(import '(java.util Date Calendar)
'(java.net URI ServerSocket)
java.sql.DriverManager)
user=> (import java.util.Date) java.util.Date user=> (def *now* (Date.)) #'user/*now* user=> (str *now*) "Tue Jul 13 17:53:54 IST 2010"
(defproject firstClojure "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
:url "http://www.eclipse.org/legal/epl-v10.html"}
:plugins [[lein-swank "1.4.4"]]
:dependencies [[org.clojure/clojure "1.4.0"]])
slime 실행
#!/usr/bin/python##################################################################################3456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789## 10 20 30 40 50 60 70 80#### Info:## Example of how to use libnotify correctly and at the same time comply to## the new jaunty notification spec (read: visual guidelines)#### Run:## chmod +x icon-summary-body.py## ./icon-summary-body.py#### Copyright 2009 Canonical Ltd.#### Author:## Mirco "MacSlow" Mueller <mirco.mueller@canonical.com>#### This program is free software: you can redistribute it and/or modify it## under the terms of the GNU General Public License version 3, as published## by the Free Software Foundation.#### This program is distributed in the hope that it will be useful, but## WITHOUT ANY WARRANTY; without even the implied warranties of## MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR## PURPOSE. See the GNU General Public License for more details.#### You should have received a copy of the GNU General Public License along## with this program. If not, see <http://www.gnu.org/licenses/>.##################################################################################import sysimport pynotify# even in Python this is globally nasty <img src="http://developer.ubuntu.com/wp-includes/images/smilies/icon_smile.gif" alt=":)" class="wp-smiley"> , do something nicer in your own codecapabilities = {'actions': False, 'body': False, 'body-hyperlinks': False, 'body-images': False, 'body-markup': False, 'icon-multi': False, 'icon-static': False, 'sound': False, 'image/svg+xml': False, 'private-synchronous': False, 'append': False, 'private-icon-only': False}def initCaps (): caps = pynotify.get_server_caps () if caps is None: print "Failed to receive server caps." sys.exit (1) for cap in caps: capabilities[cap] = Truedef printCaps (): info = pynotify.get_server_info () print "Name: " + info["name"] print "Vendor: " + info["vendor"] print "Version: " + info["version"] print "Spec. Version: " + info["spec-version"] caps = pynotify.get_server_caps () if caps is None: print "Failed to receive server caps." sys.exit (1) print "Supported capabilities/hints:" if capabilities['actions']: print "\tactions" if capabilities['body']: print "\tbody" if capabilities['body-hyperlinks']: print "\tbody-hyperlinks" if capabilities['body-images']: print "\tbody-images" if capabilities['body-markup']: print "\tbody-markup" if capabilities['icon-multi']: print "\ticon-multi" if capabilities['icon-static']: print "\ticon-static" if capabilities['sound']: print "\tsound" if capabilities['image/svg+xml']: print "\timage/svg+xml" if capabilities['private-synchronous']: print "\tprivate-synchronous" if capabilities['append']: print "\tappend" if capabilities['private-icon-only']: print "\tprivate-icon-only" print "Notes:" if info["name"] == "notify-osd": print "\tx- and y-coordinates hints are ignored" print "\texpire-timeout is ignored" print "\tbody-markup is accepted but filtered" else: print "\tnone"if __name__ == '__main__': if not pynotify.init ("icon-summary-body"): sys.exit (1) # call this so we can savely use capabilities dictionary later initCaps () # show what's supported printCaps () # try the icon-summary-body case n = pynotify.Notification ("Cole Raby", "Hey pal, what's up with the party " "next weekend? Will you join me " "and Anna?", "notification-message-im") n.show ()