本文整理汇总了Java中org.schwering.irc.lib.IRCConnection类的典型用法代码示例。如果您正苦于以下问题:Java IRCConnection类的具体用法?Java IRCConnection怎么用?Java IRCConnection使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
IRCConnection类属于org.schwering.irc.lib包,在下文中一共展示了IRCConnection类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: start
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
@Override
public void start(Map<String, String> props) {
queue = new LinkedBlockingQueue<>();
host = props.get(IRCFeedConnector.IRC_HOST_CONFIG);
port = Integer.parseInt(props.get(IRCFeedConnector.IRC_PORT_CONFIG));
channels = props.get(IRCFeedConnector.IRC_CHANNELS_CONFIG).split(",");
topic = props.get(IRCFeedConnector.TOPIC_CONFIG);
String nick = "kafka-connect-irc-" + Math.abs(new Random().nextInt());
log.info("Starting irc feed task " + nick + ", channels " + props.get(IRCFeedConnector.IRC_CHANNELS_CONFIG));
this.conn = new IRCConnection(host, new int[]{port}, "", nick, nick, nick);
this.conn.addIRCEventListener(new IRCMessageListener());
this.conn.setEncoding("UTF-8");
this.conn.setPong(true);
this.conn.setColors(false);
try {
this.conn.connect();
} catch (IOException e) {
throw new RuntimeException("Unable to connect to " + host + ":" + port + ".", e);
}
for (String channel : channels) {
this.conn.send("JOIN " + channel);
}
}
示例2: open
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
public void open() {
queue = new LinkedBlockingQueue<>();
String nick = "kafka-connect-irc-" + Math.abs(new Random().nextInt());
log.info("Starting irc feed task " + nick + ", channels " + String.join(",", channels));
this.conn = new IRCConnection(host, new int[]{port}, "", nick, nick, nick);
this.conn.addIRCEventListener(new IRCMessageListener());
this.conn.setEncoding("UTF-8");
this.conn.setPong(true);
this.conn.setColors(false);
try {
this.conn.connect();
} catch (IOException e) {
throw new RuntimeException("Unable to connect to " + host + ":" + port + ".", e);
}
for (String channel : channels) {
this.conn.send("JOIN " + channel);
}
}
示例3: joinChannel
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
public void joinChannel(IrcChannel channel) {
if (channel == null) {
return;
}
IRCConnection connection = component.getIRCConnection(configuration);
String chn = channel.getName();
String key = channel.getKey();
if (ObjectHelper.isNotEmpty(key)) {
if (LOG.isDebugEnabled()) {
LOG.debug("Joining: {} using {} with secret key", channel, connection.getClass().getName());
}
connection.doJoin(chn, key);
} else {
if (LOG.isDebugEnabled()) {
LOG.debug("Joining: {} using {}", channel, connection.getClass().getName());
}
connection.doJoin(chn);
}
if (configuration.isNamesOnJoin()) {
connection.doNames(chn);
}
}
示例4: doSetup
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
@Before
public void doSetup() {
connection = mock(IRCConnection.class);
endpoint = mock(IrcEndpoint.class);
configuration = mock(IrcConfiguration.class);
listener = mock(IRCEventAdapter.class);
exchange = mock(Exchange.class);
message = mock(Message.class);
List<IrcChannel> channels = new ArrayList<IrcChannel>();
channels.add(new IrcChannel("#chan1", null));
channels.add(new IrcChannel("#chan2", "chan2key"));
when(configuration.getChannels()).thenReturn(channels);
when(endpoint.getConfiguration()).thenReturn(configuration);
producer = new IrcProducer(endpoint, connection);
producer.setListener(listener);
}
示例5: doSetup
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
@Before
public void doSetup() {
connection = mock(IRCConnection.class);
endpoint = mock(IrcEndpoint.class);
processor = mock(Processor.class);
configuration = mock(IrcConfiguration.class);
listener = mock(IRCEventAdapter.class);
List<IrcChannel> channels = new ArrayList<IrcChannel>();
channels.add(new IrcChannel("#chan1", null));
channels.add(new IrcChannel("#chan2", "chan2key"));
when(configuration.getChannels()).thenReturn(channels);
when(endpoint.getConfiguration()).thenReturn(configuration);
consumer = new IrcConsumer(endpoint, processor, connection);
consumer.setListener(listener);
}
示例6: doSetup
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
@Before
public void doSetup() {
component = mock(IrcComponent.class);
configuration = mock(IrcConfiguration.class);
connection = mock(IRCConnection.class);
List<IrcChannel> channels = new ArrayList<IrcChannel>();
channels.add(new IrcChannel("#chan1", null));
channels.add(new IrcChannel("#chan2", "chan2key"));
when(configuration.getChannels()).thenReturn(channels);
when(configuration.findChannel("#chan1")).thenReturn(channels.get(0));
when(configuration.findChannel("#chan2")).thenReturn(channels.get(1));
when(component.getIRCConnection(configuration)).thenReturn(connection);
endpoint = new IrcEndpoint("foo", component, configuration);
}
示例7: createConnection
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
@Override
protected IRCConnection createConnection(IrcConfiguration configuration) {
IRCConnection connection = super.createConnection(configuration);
listener = new BotecoIrcEventListener(connection, configuration, repository, bus);
connection.addIRCEventListener(listener);
return connection;
}
示例8: BotecoIrcEventListener
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
/**
* Creates a new listener using the given parameters
*
* @param connection the irc connection to execute operations
* @param configuration the configuration to get the bot information
* @param repository the channel repository for auto join feature
* @param bus the message bus to broadcast events
*/
public BotecoIrcEventListener(IRCConnection connection,
IrcConfiguration configuration,
IrcChannelsRepository repository,
EventBus bus) {
this.connection = connection;
this.configuration = configuration;
this.repository = repository;
this.bus = bus;
}
示例9: WikipediaEditEventIrcStream
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
WikipediaEditEventIrcStream(String host, int port) {
final String nick = "flink-bot-" + UUID.randomUUID().toString();
this.conn = new IRCConnection(host, new int[] { port}, "", nick, nick, nick);
conn.addIRCEventListener(new WikipediaIrcChannelListener(edits));
conn.setEncoding("UTF-8");
conn.setPong(true);
conn.setColors(false);
conn.setDaemon(true);
conn.setName("WikipediaEditEventIrcStreamThread");
}
示例10: handleNickInUse
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
private void handleNickInUse() {
IRCConnection connection = component.getIRCConnection(configuration);
String nick = connection.getNick() + "-";
// hackish but working approach to prevent an endless loop. Abort after 4 nick attempts.
if (nick.endsWith("----")) {
LOG.error("Unable to set nick: " + nick + " disconnecting");
} else {
LOG.warn("Unable to set nick: " + nick + " Retrying with " + nick + "-");
connection.doNick(nick);
// if the nick failure was doing startup channels weren't joined. So join
// the channels now. It's a no-op if the channels are already joined.
joinChannels();
}
}
示例11: getIRCConnection
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
public synchronized IRCConnection getIRCConnection(IrcConfiguration configuration) {
final IRCConnection connection;
if (connectionCache.containsKey(configuration.getCacheKey())) {
if (LOG.isDebugEnabled()) {
LOG.debug("Returning Cached Connection to {}:{}", configuration.getHostname(), configuration.getNickname());
}
connection = connectionCache.get(configuration.getCacheKey());
} else {
connection = createConnection(configuration);
connectionCache.put(configuration.getCacheKey(), connection);
}
return connection;
}
示例12: closeConnection
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
public void closeConnection(String key, IRCConnection connection) {
try {
connection.doQuit();
connection.close();
} catch (Exception e) {
LOG.warn("Error during closing connection.", e);
}
}
示例13: doStop
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
@Override
protected void doStop() throws Exception {
// lets use a copy so we can clear the connections eagerly in case of exceptions
Map<String, IRCConnection> map = new HashMap<String, IRCConnection>(connectionCache);
connectionCache.clear();
for (Map.Entry<String, IRCConnection> entry : map.entrySet()) {
closeConnection(entry.getKey(), entry.getValue());
}
super.doStop();
}
示例14: main
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
public static void main(String[] args) throws InterruptedException {
List<IrcChannel> channels = new ArrayList<IrcChannel>();
channels.add(new IrcChannel("camel-test", null));
final IrcConfiguration config = new IrcConfiguration("irc.codehaus.org", "camel-rc", "Camel IRC Component", channels);
final IRCConnection conn = new IRCConnection(config.getHostname(), config.getPorts(), config.getPassword(), config.getNickname(), config.getUsername(), config.getRealname());
conn.addIRCEventListener(new CodehausIRCEventAdapter());
conn.setEncoding("UTF-8");
// conn.setDaemon(true);
conn.setColors(false);
conn.setPong(true);
try {
conn.connect();
} catch (IOException e) {
e.printStackTrace();
}
// while (!conn.isConnected()) {
// Thread.sleep(1000);
// LOG.info("Sleeping");
// }
LOG.info("Connected");
// conn.send("/JOIN #camel-test");
// LOG.info("Joining Channel: " + config.getTarget());
for (IrcChannel channel : config.getChannels()) {
conn.doJoin(channel.getName());
}
conn.doPrivmsg("#camel-test", "hi!");
Thread.sleep(Integer.MAX_VALUE);
}
示例15: WikipediaFeed
import org.schwering.irc.lib.IRCConnection; //导入依赖的package包/类
public WikipediaFeed(String host, int port) {
this.channelListeners = new HashMap<String, Set<WikipediaFeedListener>>();
this.host = host;
this.port = port;
this.nick = "samza-bot-" + Math.abs(random.nextInt());
this.conn = new IRCConnection(host, new int[] { port }, "", nick, nick, nick);
this.conn.addIRCEventListener(new WikipediaFeedIrcListener());
this.conn.setEncoding("UTF-8");
this.conn.setPong(true);
this.conn.setColors(false);
}