beepcore-java-commits Mailing List for Java BEEP Core (Page 5)
Status: Beta
Brought to you by:
huston
You can subscribe to this list here.
| 2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(22) |
Aug
(1) |
Sep
|
Oct
(16) |
Nov
(60) |
Dec
(2) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2002 |
Jan
(3) |
Feb
|
Mar
(4) |
Apr
(2) |
May
(13) |
Jun
|
Jul
|
Aug
(10) |
Sep
(34) |
Oct
(27) |
Nov
(2) |
Dec
(2) |
| 2003 |
Jan
|
Feb
|
Mar
(3) |
Apr
(15) |
May
(11) |
Jun
(14) |
Jul
(5) |
Aug
(1) |
Sep
(24) |
Oct
(4) |
Nov
(26) |
Dec
(1) |
| 2004 |
Jan
(3) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2006 |
Jan
|
Feb
(3) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Huston F. <hu...@us...> - 2003-04-23 15:23:10
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/tls In directory sc8-pr-cvs1:/tmp/cvs-serv31233/src/org/beepcore/beep/profile/tls Modified Files: TLSProfile.java TLSProfileHandshakeCompletedListener.java Log Message: cleanup of imports Index: TLSProfile.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/tls/TLSProfile.java,v retrieving revision 1.14 retrieving revision 1.15 diff -C2 -r1.14 -r1.15 *** TLSProfile.java 9 Nov 2001 16:44:43 -0000 1.14 --- TLSProfile.java 23 Apr 2003 15:23:06 -0000 1.15 *************** *** 21,25 **** import org.beepcore.beep.profile.*; import org.beepcore.beep.transport.tcp.*; - import org.beepcore.beep.util.*; --- 21,24 ---- Index: TLSProfileHandshakeCompletedListener.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/tls/TLSProfileHandshakeCompletedListener.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** TLSProfileHandshakeCompletedListener.java 8 Nov 2001 05:51:35 -0000 1.3 --- TLSProfileHandshakeCompletedListener.java 23 Apr 2003 15:23:06 -0000 1.4 *************** *** 22,26 **** import javax.net.ssl.HandshakeCompletedEvent; - import javax.net.ssl.HandshakeCompletedListener; --- 22,25 ---- |
|
From: Huston F. <hu...@us...> - 2003-04-23 15:23:10
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile In directory sc8-pr-cvs1:/tmp/cvs-serv31233/src/org/beepcore/beep/profile Modified Files: Profile.java Log Message: cleanup of imports Index: Profile.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/Profile.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** Profile.java 7 Sep 2002 15:09:38 -0000 1.4 --- Profile.java 23 Apr 2003 15:23:05 -0000 1.5 *************** *** 21,25 **** import org.beepcore.beep.core.BEEPException; import org.beepcore.beep.core.StartChannelListener; - import org.beepcore.beep.core.Channel; --- 21,24 ---- |
|
From: Huston F. <hu...@us...> - 2003-04-23 15:23:09
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/algorithm/md5 In directory sc8-pr-cvs1:/tmp/cvs-serv31233/src/org/beepcore/beep/profile/sasl/otp/algorithm/md5 Modified Files: MD5.java Log Message: cleanup of imports Index: MD5.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/algorithm/md5/MD5.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** MD5.java 8 Nov 2001 05:51:34 -0000 1.3 --- MD5.java 23 Apr 2003 15:23:06 -0000 1.4 *************** *** 20,24 **** import org.beepcore.beep.profile.sasl.InvalidParameterException; - import org.beepcore.beep.profile.sasl.otp.algorithm.Algorithm; import org.beepcore.beep.profile.sasl.otp.algorithm.AlgorithmImpl; --- 20,23 ---- |
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/database In directory sc8-pr-cvs1:/tmp/cvs-serv31233/src/org/beepcore/beep/profile/sasl/otp/database Modified Files: UserDatabaseImpl.java UserDatabase.java UserDatabaseManager.java UserDatabasePool.java Log Message: cleanup of imports Index: UserDatabaseImpl.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/database/UserDatabaseImpl.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** UserDatabaseImpl.java 7 Sep 2002 15:09:39 -0000 1.3 --- UserDatabaseImpl.java 23 Apr 2003 15:23:05 -0000 1.4 *************** *** 20,25 **** import org.beepcore.beep.profile.sasl.SASLException; import org.beepcore.beep.profile.sasl.otp.SASLOTPProfile; - import org.beepcore.beep.profile.sasl.otp.algorithm.md5.MD5; - import org.beepcore.beep.profile.sasl.otp.algorithm.sha1.SHA1; --- 20,23 ---- Index: UserDatabase.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/database/UserDatabase.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** UserDatabase.java 7 Sep 2002 15:09:38 -0000 1.3 --- UserDatabase.java 23 Apr 2003 15:23:05 -0000 1.4 *************** *** 18,24 **** import org.beepcore.beep.profile.sasl.SASLException; - import org.beepcore.beep.profile.sasl.otp.SASLOTPProfile; - import org.beepcore.beep.profile.sasl.otp.algorithm.md5.MD5; - import org.beepcore.beep.profile.sasl.otp.algorithm.sha1.SHA1; --- 18,21 ---- Index: UserDatabaseManager.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/database/UserDatabaseManager.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** UserDatabaseManager.java 5 Oct 2002 15:11:40 -0000 1.3 --- UserDatabaseManager.java 23 Apr 2003 15:23:05 -0000 1.4 *************** *** 18,27 **** - import java.io.*; - - import java.util.Hashtable; - import java.util.Properties; - - import org.beepcore.beep.core.TuningProfile; import org.beepcore.beep.profile.sasl.SASLException; --- 18,21 ---- Index: UserDatabasePool.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/database/UserDatabasePool.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** UserDatabasePool.java 5 Oct 2002 15:32:06 -0000 1.3 --- UserDatabasePool.java 23 Apr 2003 15:23:05 -0000 1.4 *************** *** 27,31 **** import org.apache.commons.logging.LogFactory; - import org.beepcore.beep.core.TuningProfile; import org.beepcore.beep.profile.sasl.SASLException; --- 27,30 ---- |
|
From: Huston F. <hu...@us...> - 2003-04-21 15:20:31
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/transport/tcp
In directory sc8-pr-cvs1:/tmp/cvs-serv30052/src/org/beepcore/beep/transport/tcp
Modified Files:
TCPSession.java
Log Message:
The first pass of interface cleanup.
Index: TCPSession.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/transport/tcp/TCPSession.java,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -r1.27 -r1.28
*** TCPSession.java 8 Mar 2003 16:39:18 -0000 1.27
--- TCPSession.java 21 Apr 2003 15:09:11 -0000 1.28
***************
*** 39,42 ****
--- 39,43 ----
import org.beepcore.beep.core.ProfileRegistry;
import org.beepcore.beep.core.Session;
+ import org.beepcore.beep.core.SessionImpl;
import org.beepcore.beep.core.SessionCredential;
import org.beepcore.beep.core.SessionTuningProperties;
***************
*** 55,59 ****
* @version $Revision$, $Date$
*/
! public class TCPSession extends Session {
// Constants
--- 56,60 ----
* @version $Revision$, $Date$
*/
! public class TCPSession extends SessionImpl {
// Constants
***************
*** 320,326 ****
}
} catch (IOException e) {
! throw new BEEPException(e.toString());
} catch (Exception e) {
! throw new BEEPException(e.toString());
}
}
--- 321,327 ----
}
} catch (IOException e) {
! throw new BEEPException(e);
} catch (Exception e) {
! throw new BEEPException(e);
}
}
|
|
From: Huston F. <hu...@us...> - 2003-04-21 15:20:31
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core In directory sc8-pr-cvs1:/tmp/cvs-serv30052/src/org/beepcore/beep/core Modified Files: Channel.java InputDataStream.java Message.java Session.java TuningProfile.java MessageMSG.java Frame.java OutputDataStream.java Added Files: ChannelImpl.java SessionImpl.java Log Message: The first pass of interface cleanup. --- NEW FILE: ChannelImpl.java --- /* * ChannelImpl.java $Revision$ $Date$ * * Copyright (c) 2001 Invisible Worlds, Inc. All rights reserved. * Copyright (c) 2001-2003 Huston Franklin. All rights reserved. * * The contents of this file are subject to the Blocks Public License (the * "License"); You may not use this file except in compliance with the License. * * You may obtain a copy of the License at http://www.beepcore.org/ * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License * for the specific language governing rights and limitations under the * License. * */ package org.beepcore.beep.core; [...1072 lines suppressed...] public void setStartData(String data) { startData = data; } /** * Used to get data that can be piggybacked on * a profile reply to a start channel request * (or any other scenario we choose) * * Could be called by users, profile implementors etc. * to fetch data off a profile response. * * @return String the attached data, if any */ public String getStartData() { return startData; } } --- NEW FILE: SessionImpl.java --- /* * Session.java $Revision: 1.32 $ $Date: 2002/10/05 15:29:24 $ * * Copyright (c) 2001 Invisible Worlds, Inc. All rights reserved. * Copyright (c) 2001,2002 Huston Franklin. All rights reserved. * Copyright (c) 2002 Kevin Kress. All rights reserved. * * The contents of this file are subject to the Blocks Public License (the * "License"); You may not use this file except in compliance with the License. * * You may obtain a copy of the License at http://www.beepcore.org/ * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License * for the specific language governing rights and limitations under the * License. * */ package org.beepcore.beep.core; [...1972 lines suppressed...] "no longer active."); } private Log log = LogFactory.getLog(this.getClass()); } static class ABORTED_SessionOperations implements SessionOperations { public void changeState(SessionImpl s, int newState) throws BEEPException { throw new BEEPException("Illegal session state transition"); } public void postFrame(SessionImpl s, Frame f) throws BEEPException { // If we're in an error state log.debug("Dropping a frame because the Session state is " + "no longer active."); } private Log log = LogFactory.getLog(this.getClass()); } } Index: Channel.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/Channel.java,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -r1.31 -r1.32 *** Channel.java 7 Mar 2003 13:01:54 -0000 1.31 --- Channel.java 21 Apr 2003 15:09:10 -0000 1.32 *************** *** 2,7 **** * Channel.java $Revision$ $Date$ * ! * Copyright (c) 2001 Invisible Worlds, Inc. All rights reserved. ! * Copyright (c) 2001,2002 Huston Franklin. All rights reserved. * * The contents of this file are subject to the Blocks Public License (the --- 2,6 ---- * Channel.java $Revision$ $Date$ * ! * Copyright (c) 2003 Huston Franklin. All rights reserved. [...1149 lines suppressed...] ! * to fetch data off a profile response. ! * ! * @return String the attached data, if any ! */ ! public String getStartData() ! { ! return startData; ! } } --- 90,99 ---- public MessageStatus sendMSG(OutputDataStream stream, ReplyListener replyListener) ! throws BEEPException; ! public void setStartData(String data); ! public String getStartData(); ! public String getProfile(); } Index: InputDataStream.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/InputDataStream.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** InputDataStream.java 7 Sep 2002 14:59:30 -0000 1.4 --- InputDataStream.java 21 Apr 2003 15:09:10 -0000 1.5 *************** *** 54,58 **** * Channel to update the receive window. */ ! InputDataStream(Channel channel) { this.channel = channel; --- 54,58 ---- * Channel to update the receive window. */ ! InputDataStream(ChannelImpl channel) { this.channel = channel; *************** *** 202,206 **** LinkedList buffers = new LinkedList(); private int availableBytes = 0; ! private Channel channel = null; private boolean closed = false; private boolean complete = false; --- 202,206 ---- LinkedList buffers = new LinkedList(); private int availableBytes = 0; ! private ChannelImpl channel = null; private boolean closed = false; private boolean complete = false; Index: Message.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/Message.java,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -r1.9 -r1.10 *** Message.java 4 Oct 2002 04:01:00 -0000 1.9 --- Message.java 21 Apr 2003 15:09:10 -0000 1.10 *************** *** 69,73 **** /** <code>Channel</code> to which <code>Message</code> belongs. */ ! Channel channel; /** Message number of <code>Message</code>. */ --- 69,73 ---- /** <code>Channel</code> to which <code>Message</code> belongs. */ ! ChannelImpl channel; /** Message number of <code>Message</code>. */ *************** *** 108,112 **** * @see Channel */ ! Message(Channel channel, int msgno, InputDataStream data, int messageType) { this.channel = channel; --- 108,112 ---- * @see Channel */ ! Message(ChannelImpl channel, int msgno, InputDataStream data, int messageType) { this.channel = channel; *************** *** 129,133 **** * @see InputDataStream */ ! Message(Channel channel, int msgno, int ansno, InputDataStream data) { this(channel, msgno, data, MESSAGE_TYPE_ANS); --- 129,133 ---- * @see InputDataStream */ ! Message(ChannelImpl channel, int msgno, int ansno, InputDataStream data) { this(channel, msgno, data, MESSAGE_TYPE_ANS); Index: Session.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/Session.java,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -r1.33 -r1.34 *** Session.java 8 Mar 2003 16:39:18 -0000 1.33 --- Session.java 21 Apr 2003 15:09:10 -0000 1.34 *************** *** 2,8 **** * Session.java $Revision$ $Date$ * ! * Copyright (c) 2001 Invisible Worlds, Inc. All rights reserved. ! * Copyright (c) 2001,2002 Huston Franklin. All rights reserved. ! * Copyright (c) 2002 Kevin Kress. All rights reserved. * * The contents of this file are subject to the Blocks Public License (the --- 2,6 ---- * Session.java $Revision$ $Date$ * [...2190 lines suppressed...] ! * the BEEP protocol (e.g. the Session is not in a ! * state to create a new Channel). * @see StartChannelProfile * @see MessageListener */ public Channel startChannel(Collection profiles, MessageListener listener) ! throws BEEPException, BEEPError; /** * This method is used to terminate the session when there is an ! * non-recoverable error. * * @param reason * */ ! public void terminate(String reason); ! public SessionTuningProperties getTuningProperties(); } Index: TuningProfile.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/TuningProfile.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** TuningProfile.java 5 Oct 2002 15:29:47 -0000 1.8 --- TuningProfile.java 21 Apr 2003 15:09:10 -0000 1.9 *************** *** 101,109 **** log.debug("TuningProfile.begin"); ! Session session = channel.getSession(); try { tuningChannels.add(channel); ! session.sendProfile(profile, data, channel); session.disableIO(); } catch (Exception x) { --- 101,109 ---- log.debug("TuningProfile.begin"); ! SessionImpl session = (SessionImpl)channel.getSession(); try { tuningChannels.add(channel); ! session.sendProfile(profile, data, (ChannelImpl)channel); session.disableIO(); } catch (Exception x) { *************** *** 114,118 **** "UnknownError" + x.getMessage()); ! session.sendProfile(profile, error.createErrorMessage(), channel); abort(error, channel); } --- 114,119 ---- "UnknownError" + x.getMessage()); ! session.sendProfile(profile, error.createErrorMessage(), ! (ChannelImpl)channel); abort(error, channel); } *************** *** 132,146 **** */ public void complete(Channel channel, ! SessionCredential localCred, ! SessionCredential peerCred, ! SessionTuningProperties tuning, ! ProfileRegistry registry, ! Object argument) ! throws BEEPException { try { log.debug("TuningProfile.complete"); ! Session s = channel.getSession(); s.reset(localCred, peerCred, tuning, registry, argument); --- 133,147 ---- */ public void complete(Channel channel, ! SessionCredential localCred, ! SessionCredential peerCred, ! SessionTuningProperties tuning, ! ProfileRegistry registry, ! Object argument) ! throws BEEPException { try { log.debug("TuningProfile.complete"); ! SessionImpl s = (SessionImpl)channel.getSession(); s.reset(localCred, peerCred, tuning, registry, argument); *************** *** 163,167 **** protected static void disableIO(Session session) { ! session.disableIO(); } --- 164,168 ---- protected static void disableIO(Session session) { ! ((SessionImpl)session).disableIO(); } *************** *** 175,179 **** protected static void enableIO(Session session) { ! session.enableIO(); } --- 176,180 ---- protected static void enableIO(Session session) { ! ((SessionImpl)session).enableIO(); } *************** *** 189,193 **** SessionCredential credential) { ! session.setLocalCredential(credential); } --- 190,194 ---- SessionCredential credential) { ! ((SessionImpl)session).setLocalCredential(credential); } *************** *** 203,207 **** SessionCredential credential) { ! session.setPeerCredential(credential); } --- 204,208 ---- SessionCredential credential) { ! ((SessionImpl)session).setPeerCredential(credential); } *************** *** 226,230 **** throws BEEPException { ! return session.reset(localCred, peerCred, tuning, registry, argument); } --- 227,231 ---- throws BEEPException { ! return ((SessionImpl)session).reset(localCred, peerCred, tuning, registry, argument); } *************** *** 242,249 **** */ protected static void sendProfile(Session session, String uri, String data, ! Channel channel) throws BEEPException { ! session.sendProfile(uri, data, channel); } --- 243,250 ---- */ protected static void sendProfile(Session session, String uri, String data, ! Channel channel) throws BEEPException { ! ((SessionImpl)session).sendProfile(uri, data, (ChannelImpl)channel); } *************** *** 259,263 **** l.add(p); ! return session.startChannelRequest(l, listener, true); } } --- 260,264 ---- l.add(p); ! return ((SessionImpl)session).startChannelRequest(l, listener, true); } } Index: MessageMSG.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/MessageMSG.java,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** MessageMSG.java 2 May 2002 02:42:11 -0000 1.8 --- MessageMSG.java 21 Apr 2003 15:09:10 -0000 1.9 *************** *** 30,34 **** class MessageMSG extends Message { ! MessageMSG(Channel channel, int msgno, InputDataStream data) { super(channel, msgno, data, MESSAGE_TYPE_MSG); } --- 30,34 ---- class MessageMSG extends Message { ! MessageMSG(ChannelImpl channel, int msgno, InputDataStream data) { super(channel, msgno, data, MESSAGE_TYPE_MSG); } Index: Frame.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/Frame.java,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -r1.19 -r1.20 *** Frame.java 5 Oct 2002 15:26:51 -0000 1.19 --- Frame.java 21 Apr 2003 15:09:10 -0000 1.20 *************** *** 93,97 **** /** <code>Channel</code> to which <code>Frame</code> belongs. */ ! private Channel channel; /** Message number of <code>Frame</code>. */ --- 93,97 ---- /** <code>Channel</code> to which <code>Frame</code> belongs. */ ! private ChannelImpl channel; /** Message number of <code>Frame</code>. */ *************** *** 124,128 **** private LinkedList payload = new LinkedList(); ! Frame(int messageType, Channel channel, int msgno, boolean last, long seqno, int size, int ansno) { --- 124,128 ---- private LinkedList payload = new LinkedList(); ! Frame(int messageType, ChannelImpl channel, int msgno, boolean last, long seqno, int size, int ansno) { *************** *** 289,293 **** } ! static Frame parseHeader(Session session, byte[] headerBuffer, int length) throws BEEPException { --- 289,293 ---- } ! static Frame parseHeader(SessionImpl session, byte[] headerBuffer, int length) throws BEEPException { Index: OutputDataStream.java =================================================================== RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/OutputDataStream.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** OutputDataStream.java 2 Sep 2002 13:44:42 -0000 1.4 --- OutputDataStream.java 21 Apr 2003 15:09:11 -0000 1.5 *************** *** 136,140 **** } ! void setChannel(Channel channel) { this.channel = channel; } --- 136,140 ---- } ! void setChannel(ChannelImpl channel) { this.channel = channel; } *************** *** 146,149 **** private boolean headersSent = false; private int curOffset = 0; ! private Channel channel = null; } --- 146,149 ---- private boolean headersSent = false; private int curOffset = 0; ! private ChannelImpl channel = null; } |
|
From: Huston F. <hu...@us...> - 2003-04-21 15:20:30
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/lib
In directory sc8-pr-cvs1:/tmp/cvs-serv30052/src/org/beepcore/beep/lib
Modified Files:
SharedChannel.java
Log Message:
The first pass of interface cleanup.
Index: SharedChannel.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/lib/SharedChannel.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -r1.8 -r1.9
*** SharedChannel.java 7 Sep 2002 15:06:45 -0000 1.8
--- SharedChannel.java 21 Apr 2003 15:09:11 -0000 1.9
***************
*** 3,7 ****
*
* Copyright (c) 2001 Invisible Worlds, Inc. All rights reserved.
! * Copyright (c) 2002 Huston Franklin. All rights reserved.
*
* The contents of this file are subject to the Blocks Public License (the
--- 3,7 ----
*
* Copyright (c) 2001 Invisible Worlds, Inc. All rights reserved.
! * Copyright (c) 2002, 2003 Huston Franklin. All rights reserved.
*
* The contents of this file are subject to the Blocks Public License (the
***************
*** 47,51 ****
* @version $Revision$, $Date$
*/
! public class SharedChannel extends Channel {
private Channel channel = null; // Channel this SharedChannel references
--- 47,51 ----
* @version $Revision$, $Date$
*/
! public class SharedChannel implements Channel {
private Channel channel = null; // Channel this SharedChannel references
***************
*** 64,70 ****
SharedChannel(Channel channel, ChannelPool pool)
{
- super(channel.getProfile(), String.valueOf(channel.getNumber()),
- channel.getMessageListener(), true, channel.getSession());
-
this.channel = channel;
this.pool = pool;
--- 64,67 ----
***************
*** 121,139 ****
}
- public void setReceiveBufferSize( int size ) throws BEEPException
- {
- channel.setReceiveBufferSize( size );
- }
-
- public int getBufferSize()
- {
- return channel.getBufferSize();
- }
-
- public int getBufferUsed()
- {
- return channel.getBufferUsed();
- }
-
public MessageListener getMessageListener()
{
--- 118,121 ----
***************
*** 186,189 ****
--- 168,191 ----
channel.sendMSG(ds, r);
return r;
+ }
+
+ public void setStartData(String data)
+ {
+ channel.setStartData(data);
+ }
+
+ public String getStartData()
+ {
+ return channel.getStartData();
+ }
+
+ public Object getAppData()
+ {
+ return channel.getAppData();
+ }
+
+ public void setAppData(Object applicationData)
+ {
+ channel.setAppData(applicationData);
}
}
|
|
From: Huston F. <hu...@us...> - 2003-03-08 16:39:21
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/transport/tcp
In directory sc8-pr-cvs1:/tmp/cvs-serv7897/transport/tcp
Modified Files:
TCPSession.java TCPSessionCreator.java
Log Message:
David Blacka's servername patch applied
Index: TCPSession.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/transport/tcp/TCPSession.java,v
retrieving revision 1.26
retrieving revision 1.27
diff -C2 -r1.26 -r1.27
*** TCPSession.java 5 Oct 2002 15:32:45 -0000 1.26
--- TCPSession.java 8 Mar 2003 16:39:18 -0000 1.27
***************
*** 115,122 ****
private TCPSession(Socket sock, ProfileRegistry registry, int firstChannel,
SessionCredential localCred, SessionCredential peerCred,
! SessionTuningProperties tuning)
throws BEEPException
{
! super(registry, firstChannel, localCred, peerCred, tuning);
socket = sock;
--- 115,122 ----
private TCPSession(Socket sock, ProfileRegistry registry, int firstChannel,
SessionCredential localCred, SessionCredential peerCred,
! SessionTuningProperties tuning, String servername)
throws BEEPException
{
! super(registry, firstChannel, localCred, peerCred, tuning, servername);
socket = sock;
***************
*** 143,146 ****
--- 143,147 ----
* @param sock
* @param registry
+ * @param servername
*
* @throws BEEPException
***************
*** 148,156 ****
*/
public static TCPSession createInitiator(Socket sock,
! ProfileRegistry registry)
throws BEEPException
{
return new TCPSession(sock, (ProfileRegistry) registry.clone(),
! CHANNEL_START_ODD, null, null, null);
}
--- 149,175 ----
*/
public static TCPSession createInitiator(Socket sock,
! ProfileRegistry registry,
! String servername)
throws BEEPException
{
return new TCPSession(sock, (ProfileRegistry) registry.clone(),
! CHANNEL_START_ODD, null, null, null, servername);
! }
! /**
! * Creates a TCPSession for a Socket that was created by
! * initiating a connection.
! *
! *
! * @param sock
! * @param registry
! *
! * @throws BEEPException
! *
! */
! public static TCPSession createInitiator(Socket sock,
! ProfileRegistry registry)
! throws BEEPException
! {
! return createInitiator(sock, registry, null);
}
***************
*** 171,175 ****
{
return new TCPSession(sock, (ProfileRegistry) registry.clone(),
! CHANNEL_START_EVEN, null, null, null);
}
--- 190,194 ----
{
return new TCPSession(sock, (ProfileRegistry) registry.clone(),
! CHANNEL_START_EVEN, null, null, null, null);
}
***************
*** 333,340 ****
if (isInitiator()) {
return new TCPSession(s, reg, CHANNEL_START_ODD,
! localCred, peerCred, tuning);
} else {
return new TCPSession(s, reg, CHANNEL_START_EVEN,
! localCred, peerCred, tuning);
}
}
--- 352,359 ----
if (isInitiator()) {
return new TCPSession(s, reg, CHANNEL_START_ODD,
! localCred, peerCred, tuning, null);
} else {
return new TCPSession(s, reg, CHANNEL_START_EVEN,
! localCred, peerCred, tuning, null);
}
}
Index: TCPSessionCreator.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/transport/tcp/TCPSessionCreator.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -r1.5 -r1.6
*** TCPSessionCreator.java 8 Nov 2001 05:26:29 -0000 1.5
--- TCPSessionCreator.java 8 Mar 2003 16:39:18 -0000 1.6
***************
*** 87,90 ****
--- 87,91 ----
* @param port
* @param registry
+ * @param servername
*
* @throws BEEPException
***************
*** 92,101 ****
*/
public static TCPSession initiate(InetAddress host, int port,
! ProfileRegistry registry)
throws BEEPException
{
try {
return TCPSession.createInitiator(new Socket(host, port),
! registry);
} catch (IOException x) {
throw new BEEPException(x.getMessage());
--- 93,103 ----
*/
public static TCPSession initiate(InetAddress host, int port,
! ProfileRegistry registry,
! String servername)
throws BEEPException
{
try {
return TCPSession.createInitiator(new Socket(host, port),
! registry, servername);
} catch (IOException x) {
throw new BEEPException(x.getMessage());
***************
*** 109,112 ****
--- 111,132 ----
* @param host
* @param port
+ * @param registry
+ *
+ * @throws BEEPException
+ *
+ */
+ public static TCPSession initiate(InetAddress host, int port,
+ ProfileRegistry registry)
+ throws BEEPException
+ {
+ return initiate(host, port, registry, null);
+ }
+
+ /**
+ * Method initiate
+ *
+ *
+ * @param host
+ * @param port
* @param profiles
* @param ccls
***************
*** 143,146 ****
--- 163,179 ----
try {
return initiate(InetAddress.getByName(host), port, registry);
+ } catch (UnknownHostException x) {
+ throw new BEEPException("Unable to connect, unkown host");
+ }
+ }
+
+ public static TCPSession initiate(String host, int port,
+ ProfileRegistry registry,
+ String servername)
+ throws BEEPException
+ {
+ try {
+ return initiate(InetAddress.getByName(host), port, registry,
+ servername);
} catch (UnknownHostException x) {
throw new BEEPException("Unable to connect, unkown host");
|
|
From: Huston F. <hu...@us...> - 2003-03-08 16:39:21
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core
In directory sc8-pr-cvs1:/tmp/cvs-serv7897/core
Modified Files:
Session.java
Log Message:
David Blacka's servername patch applied
Index: Session.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/Session.java,v
retrieving revision 1.32
retrieving revision 1.33
diff -C2 -r1.32 -r1.33
*** Session.java 5 Oct 2002 15:29:24 -0000 1.32
--- Session.java 8 Mar 2003 16:39:18 -0000 1.33
***************
*** 130,133 ****
--- 130,135 ----
private boolean allowChannelWindowUpdates;
private DocumentBuilder builder; // generic XML parser
+ private String serverName;
+ private boolean sentServerName = false;
/**
***************
*** 146,150 ****
protected Session(ProfileRegistry registry, int firstChannel,
SessionCredential localCred, SessionCredential peerCred,
! SessionTuningProperties tuning)
throws BEEPException
{
--- 148,152 ----
protected Session(ProfileRegistry registry, int firstChannel,
SessionCredential localCred, SessionCredential peerCred,
! SessionTuningProperties tuning, String servername)
throws BEEPException
{
***************
*** 159,162 ****
--- 161,165 ----
properties = new Hashtable(DEFAULT_PROPERTIES_SIZE);
tuningProperties = tuning;
+ serverName = servername;
try {
***************
*** 543,546 ****
--- 546,553 ----
startBuffer.append("<start number='");
startBuffer.append(channelNumber);
+ if (serverName != null && !sentServerName) {
+ startBuffer.append("' serverName='");
+ startBuffer.append(serverName);
+ }
startBuffer.append("'>");
***************
*** 612,615 ****
--- 619,626 ----
}
+ if (serverName != null) {
+ sentServerName = true;
+ }
+
fireChannelStarted(ch);
return ch;
***************
*** 816,819 ****
--- 827,835 ----
}
+ public String getServerName()
+ {
+ return serverName;
+ }
+
/**
* This method is designed to allow for flow control across the multiplexed
***************
*** 1350,1354 ****
// this attribute is implied
! String serverName = topElement.getAttribute("serverName");
NodeList profiles =
topElement.getElementsByTagName("profile");
--- 1366,1370 ----
// this attribute is implied
! serverName = topElement.getAttribute("serverName");
NodeList profiles =
topElement.getElementsByTagName("profile");
|
|
From: Huston F. <hu...@us...> - 2003-03-07 13:02:00
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core
In directory sc8-pr-cvs1:/tmp/cvs-serv16166/src/org/beepcore/beep/core
Modified Files:
Channel.java
Log Message:
Fixed channel to only allow one MSG to be notified at a time.
Index: Channel.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/core/Channel.java,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -r1.30 -r1.31
*** Channel.java 5 Oct 2002 15:26:30 -0000 1.30
--- Channel.java 7 Mar 2003 13:01:54 -0000 1.31
***************
*** 187,190 ****
--- 187,191 ----
sentMSGQueue.add(new MessageStatus(this, Message.MESSAGE_TYPE_MSG, 0,
null, rl));
+ recvMSGQueue.add(new MessageMSG(this, 0, null));
state = STATE_ACTIVE;
***************
*** 455,504 ****
}
! if (m == null) {
! m = new MessageMSG(this, frame.getMsgno(),
! new InputDataStream(this));
!
! recvMSGQueue.addLast(m);
! notify = true;
! }
! Iterator i = frame.getPayload();
! synchronized (m) {
! while (i.hasNext()) {
! m.getDataStream().add((BufferSegment)i.next());
! }
! if (frame.isLast()) {
! m.getDataStream().setComplete();
! }
! }
! // The MessageListener interface only allows one message
! // up to be processed at a time so if this is not the
! // first message on the queue just return.
! if (m != recvMSGQueue.getFirst()) {
! return;
}
if (frame.isLast()) {
! synchronized (m) {
! if (m.isNotified()) {
! recvMSGQueue.remove(m);
! }
! }
}
- }
-
- if (notify) {
- synchronized (recvMSGQueue) {
- final MessageMSG m =
- (MessageMSG)recvMSGQueue.getFirst();
- synchronized (m) {
- if (m.getDataStream().isComplete()) {
- recvMSGQueue.remove(m);
- }
- m.setNotified();
- }
try {
listener.receiveMSG(m);
--- 456,492 ----
}
! if (m != null) {
! /// Move this code to DataStream...
! Iterator i = frame.getPayload();
! synchronized (m) {
! while (i.hasNext()) {
! m.getDataStream().add((BufferSegment) i.next());
! }
!
! if (frame.isLast()) {
! m.getDataStream().setComplete();
! }
! }
!
! return;
! }
! m = new MessageMSG(this, frame.getMsgno(),
! new InputDataStream(this));
! m.setNotified();
! Iterator i = frame.getPayload();
! while (i.hasNext()) {
! m.getDataStream().add((BufferSegment)i.next());
}
if (frame.isLast()) {
! m.getDataStream().setComplete();
}
+ recvMSGQueue.addLast(m);
+
+ if (recvMSGQueue.size() == 1) {
try {
listener.receiveMSG(m);
***************
*** 951,954 ****
--- 939,980 ----
status.setMessageStatus(MessageStatus.MESSAGE_STATUS_SENT);
+
+ if (ds.isComplete() && ds.availableSegment() == false &&
+ (status.getMessageType() == Message.MESSAGE_TYPE_RPY ||
+ status.getMessageType() == Message.MESSAGE_TYPE_NUL))
+ {
+ MessageMSG m;
+ synchronized (recvMSGQueue) {
+ recvMSGQueue.removeFirst();
+
+ if (recvMSGQueue.size() != 0) {
+ m = (MessageMSG) recvMSGQueue.getFirst();
+ synchronized (m) {
+ m.setNotified();
+ }
+ } else {
+ m = null;
+ }
+ }
+
+ if (m != null) {
+ try {
+ listener.receiveMSG(m);
+ } catch (BEEPError e) {
+ try {
+ m.sendERR(e);
+ } catch (BEEPException e2) {
+ log.error("Error sending ERR", e2);
+ }
+ } catch (AbortChannelException e) {
+ try {
+ /* @todo change this to abort or something else */
+ Channel.this.close();
+ } catch (BEEPException e2) {
+ log.error("Error closing channel", e2);
+ }
+ }
+ }
+ }
}
|
|
From: <as...@cy...> - 2002-12-03 01:32:04
|
<html> <head><base href=http://www.cyberway-canada.com/pminew/INDEX.HTM> <meta http-equiv="Content-Language" content="zh-cn"> <meta name="GENERATOR" content="Microsoft FrontPage 5.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>赛百威第77期成功的项目管理集训</title> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); //--> </script> </head> <body topmargin="0"> <div align="center"> <center> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="780" id="AutoNumber1"> <tr> <td width="778" height="156"> <div align="center"><img src="../images/pmi77.gif" width="778" height="186"></div></td> </tr> <tr> <td width="100%"> <p style="margin-top: 8; margin-bottom: 8"><br> <img border="0" src="img/BD21364_.gif" width="15" height="15"><font size="2"> 30%精典案例,30%练习,40%理论基础,实用与认证并重之集训</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 中文授课学员满意度比外籍教师授课高出5-10个百分点,推荐率高达98%以上</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 本课程可获得PMI的18个PDU(专业发展学分,考PMP必修之学分)</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 该课程已成功举办了近<span lang="en-us">80</span>期,近200家大型企业,近3000人次的学员通过本课程,该课程已获国家专利局注册</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 目标学员:<font color="#FF0000">中高层管理干部、企业职能部门经理、企业的项目经理、项目的参与人员、政府部门的管理人员</font></font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 课程内容:以《PMBOK2000》9大知识体系结构,注重5大项目管理过程的应用课程 </font> <div id="Layer1" style="position:absolute; left:556px; top:188px; width:235px; height:324px; z-index:-1; background-color: #FFFFFF; layer-background-color: #FFFFFF;"> <table width="93%" height="324" border="0"> <tr> <td height="205" valign="top"><img src="../image/home/cyberlogo.gif" width="230" height="60"></td> </tr> <tr> <td height="81"> <img border="0" src="../image/home/replogo.gif" width="220" height="58"></td> </tr> <tr> <td height="30"><img src="img/mslogo.jpg" width="160" height="25"><font size="1"><em>PM Tools </em></font></td> </tr> </table> </div></td> </tr> <tr> <td width="100%"> <p><img border="0" src="img/BD21364_.gif" width="15" height="15"><font size="2"> 主办单位:美国项目管理协会(PMI)</font></p> <p><font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 承办单位:赛百威(国际)联盟教育机构(中国首家PMI Global级注册机构)</font></p> <p><font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 赞助单位:微软(中国)有限公司亚太总部</font></td> </tr> <tr> <td width="100%"> </td> </tr> <tr> <td width="100%" valign="top"> <table width="780" height="41" border="0" align="left"> <tr> <td width="325" height="392" rowspan="2" valign="top" background="img/jmbui.jpg"> <p style="margin-top: 4; margin-bottom: 4"> <img border="0" src="img/BD21364_.gif" width="15" height="15">开课时间:</p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月06、07日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月13、14日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月15、16日(周日、一)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月20、21日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月28、29日(周六、日)</font></p> <p style="margin-top: 4; margin-bottom: 4"> </p> <div align="right"> <table width="230" height="241" border="1" cellpadding="0" cellspacing="0" bordercolor="#FF0000" id="AutoNumber6" style="border-collapse: collapse"> <tr> <td width="100%" height="311" valign="top"> <div align="right"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="228" id="AutoNumber5" height="241"> <tr> <td width="9%" height="34" valign="top"> <img border="0" src="img/zly-top.gif" width="10" height="10"></td> <td colspan="2" height="34"> <font face="黑体">成功案例部分如下</font></td> <td width="7%" height="34" valign="top"> <div align="right"> <img border="0" src="img/zly-top1.gif" width="10" height="10"></div></td> </tr> <tr> <td width="9%" height="207" valign="bottom"> <div align="left"> <img border="0" src="img/zly-btm.gif" width="10" height="10"></div></td> <td width="45%" height="207" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><b> <font size="2" face="黑体">金融行业</font></b></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">建设银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">工商银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">农业银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>能源行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">大亚湾核电</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中国海洋石油</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中国石油天然气</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>建筑行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">香港迅捷建筑</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2"> 和记黄埔<span lang="en-us">(</span>地产<span lang="en-us">)</span></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">沿海物业</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></td> <td width="39%" height="207" valign="top"> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>电信行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东电信</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东移动</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东联通</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>大型IT行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">华为技术</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中兴通讯</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">艾默生</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><strong>政府机构</strong></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">国土局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">贸发局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">环保局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></td> <td width="7%" height="207" valign="bottom"> <div align="right"> <img border="0" src="img/zly-btm1.gif" width="10" height="10"></div></td> </tr> </table> </div> </td> </tr> </table> </div> </td> <td width="455" height="212" valign="top"> <table width="450" border="0" align="center" height="209"> <tr> <td width="206" height="205" valign="top"> <img border="0" src="img/BD21364_.gif" width="15" height="15">上课地点:<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="206" id="AutoNumber3" height="200"> <tr> <td width="206" height="200" valign="top" background="img/5t.jpg"> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广州市 汇华大厦会展中心</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">北京市 兆龙饭店2楼</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">上海市 金茂大厦1楼</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">深圳市 世贸广场B座<span lang="en-us">14</span>楼</font><p style="margin-top: 4; margin-bottom: 4"> <font size="2">青岛市 软件大厦 </font> <p style="margin-top: 4; margin-bottom: 4"> <p style="margin-top: 4; margin-bottom: 4"> <p style="margin-top: 4; margin-bottom: 4" align="center"><strong><a href="../pmi52/regtable.htm"> <font size="2">>>>>索取详细大纲</font></a></strong></td> </tr> </table> </td> <td width="250" valign="top" height="205"> <div align="right"> <table width="154" height="168" border="0"> <tr> <td height="25"> </td> </tr> <tr> <td valign="top" background="img/pmyw.jpg" height="166" width="151"> <font size="5" face="幼圆">特殊</font><font face="幼圆" size="7"><b>优惠</b></font><p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="幼圆"><br> <font color="#FF0000">原价</font><strike>5500</strike><font color="#FF0000">元/人</font></font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="幼圆" color="#FF0000">现价3800元/人</font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="Arial" color="#FF0000">P<span lang="en-us">roject 2002</span></font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><span lang="en-us"> <font face="Arial" color="#FF0000"> </span> <span lang="en-us"> 500</span></font><font face="Arial" color="#FF0000">元/人</font></b></p> </td> </tr> </table> </div></td> </tr> </table></td> </tr> <tr> <td height="182" valign="top" width="455"> <table width="447" border="0" align="center" height="239"> <tr> <td width="441" height="162"><div align="center"> <img src="img/hy.jpg" width="267" height="173"></div></td> </tr> <tr> <td height="58"> <blockquote> <p style="margin-top: 5; margin-bottom: 5"><font size="2" face="幼圆">顾问背景:</font></p> <p style="margin-top: 5; margin-bottom: 5"><font size="2">来自海外专家(美国、加拿大、新加坡),拥有超过10年以上项目管理经验,学员评价优秀率达95%</font></p> </blockquote> </td> </tr> </table></td> </tr> <tr> <td width="780" height="59" valign="top" colspan="2"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="780" id="AutoNumber2"> <tr bgcolor="#0066CC"> <td width="251"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">上海办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>21-28909726 传真:28909223</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 地址:上海浦东世纪大道88号金茂大厦31楼</font></td> <td width="264" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">北京办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>10-65900671 传真:65900670</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2">地址:</font><font color="#FFFFFF" style="font-size: 9pt">北京市朝阳区东三环北路8号亮马大厦5楼</font></td> <td width="265" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">深圳办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>755-83263526 传真:83674402</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 地址:深圳市深南中路世界贸易广场B座14楼F</font></td> </tr> </table> </td> </tr> </table></td> </tr> </table> </center> </div> </body> </html> |
|
From: <as...@cy...> - 2002-12-02 07:54:57
|
<html> <head><base href=http://www.cyberway-canada.com/pminew/INDEX.HTM> <meta http-equiv="Content-Language" content="zh-cn"> <meta name="GENERATOR" content="Microsoft FrontPage 5.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>赛百威第77期成功的项目管理集训</title> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); //--> </script> </head> <body topmargin="0"> <div align="center"> <center> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="780" id="AutoNumber1"> <tr> <td width="778" height="156"> <div align="center"><img src="../images/pmi77.gif" width="778" height="186"></div></td> </tr> <tr> <td width="100%"> <p style="margin-top: 8; margin-bottom: 8"><br> <img border="0" src="img/BD21364_.gif" width="15" height="15"><font size="2"> 30%精典案例,30%练习,40%理论基础,实用与认证并重之集训</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 中文授课学员满意度比外籍教师授课高出5-10个百分点,推荐率高达98%以上</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 本课程可获得PMI的18个PDU(专业发展学分,考PMP必修之学分)</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 该课程已成功举办了近<span lang="en-us">80</span>期,近200家大型企业,近3000人次的学员通过本课程,该课程已获国家专利局注册</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 目标学员:<font color="#FF0000">中高层管理干部、企业职能部门经理、企业的项目经理、项目的参与人员、政府部门的管理人员</font></font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 课程内容:以《PMBOK2000》9大知识体系结构,注重5大项目管理过程的应用课程 </font> <div id="Layer1" style="position:absolute; left:556px; top:188px; width:235px; height:324px; z-index:-1; background-color: #FFFFFF; layer-background-color: #FFFFFF;"> <table width="93%" height="324" border="0"> <tr> <td height="205" valign="top"><img src="../image/home/cyberlogo.gif" width="230" height="60"></td> </tr> <tr> <td height="81"> <img border="0" src="../image/home/replogo.gif" width="220" height="58"></td> </tr> <tr> <td height="30"><img src="img/mslogo.jpg" width="160" height="25"><font size="1"><em>PM Tools </em></font></td> </tr> </table> </div></td> </tr> <tr> <td width="100%"> <p><img border="0" src="img/BD21364_.gif" width="15" height="15"><font size="2"> 主办单位:美国项目管理协会(PMI)</font></p> <p><font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 承办单位:赛百威(国际)联盟教育机构(中国首家PMI Global级注册机构)</font></p> <p><font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 赞助单位:微软(中国)有限公司亚太总部</font></td> </tr> <tr> <td width="100%"> </td> </tr> <tr> <td width="100%" valign="top"> <table width="780" height="41" border="0" align="left"> <tr> <td width="325" height="392" rowspan="2" valign="top" background="img/jmbui.jpg"> <p style="margin-top: 4; margin-bottom: 4"> <img border="0" src="img/BD21364_.gif" width="15" height="15">开课时间:</p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月06、07日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月13、14日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月15、16日(周日、一)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月20、21日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月28、29日(周六、日)</font></p> <p style="margin-top: 4; margin-bottom: 4"> </p> <div align="right"> <table width="230" height="241" border="1" cellpadding="0" cellspacing="0" bordercolor="#FF0000" id="AutoNumber6" style="border-collapse: collapse"> <tr> <td width="100%" height="311" valign="top"> <div align="right"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="228" id="AutoNumber5" height="241"> <tr> <td width="9%" height="34" valign="top"> <img border="0" src="img/zly-top.gif" width="10" height="10"></td> <td colspan="2" height="34"> <font face="黑体">成功案例部分如下</font></td> <td width="7%" height="34" valign="top"> <div align="right"> <img border="0" src="img/zly-top1.gif" width="10" height="10"></div></td> </tr> <tr> <td width="9%" height="207" valign="bottom"> <div align="left"> <img border="0" src="img/zly-btm.gif" width="10" height="10"></div></td> <td width="45%" height="207" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><b> <font size="2" face="黑体">金融行业</font></b></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">建设银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">工商银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">农业银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>能源行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">大亚湾核电</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中国海洋石油</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中国石油天然气</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>建筑行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">香港迅捷建筑</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2"> 和记黄埔<span lang="en-us">(</span>地产<span lang="en-us">)</span></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">沿海物业</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></td> <td width="39%" height="207" valign="top"> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>电信行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东电信</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东移动</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东联通</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>大型IT行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">华为技术</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中兴通讯</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">艾默生</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><strong>政府机构</strong></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">国土局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">贸发局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">环保局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></td> <td width="7%" height="207" valign="bottom"> <div align="right"> <img border="0" src="img/zly-btm1.gif" width="10" height="10"></div></td> </tr> </table> </div> </td> </tr> </table> </div> </td> <td width="455" height="212" valign="top"> <table width="450" border="0" align="center" height="209"> <tr> <td width="206" height="205" valign="top"> <img border="0" src="img/BD21364_.gif" width="15" height="15">上课地点:<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="206" id="AutoNumber3" height="200"> <tr> <td width="206" height="200" valign="top" background="img/5t.jpg"> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广州市 汇华大厦会展中心</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">北京市 兆龙饭店2楼</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">上海市 金茂大厦1楼</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">深圳市 世贸广场B座<span lang="en-us">14</span>楼</font><p style="margin-top: 4; margin-bottom: 4"> <font size="2">青岛市 软件大厦 </font> <p style="margin-top: 4; margin-bottom: 4"> <p style="margin-top: 4; margin-bottom: 4"> <p style="margin-top: 4; margin-bottom: 4" align="center"><strong><a href="../pmi52/regtable.htm"> <font size="2">>>>>索取详细大纲</font></a></strong></td> </tr> </table> </td> <td width="250" valign="top" height="205"> <div align="right"> <table width="154" height="168" border="0"> <tr> <td height="25"> </td> </tr> <tr> <td valign="top" background="img/pmyw.jpg" height="166" width="151"> <font size="5" face="幼圆">特殊</font><font face="幼圆" size="7"><b>优惠</b></font><p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="幼圆"><br> <font color="#FF0000">原价</font><strike>5500</strike><font color="#FF0000">元/人</font></font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="幼圆" color="#FF0000">现价3800元/人</font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="Arial" color="#FF0000">P<span lang="en-us">roject 2002</span></font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><span lang="en-us"> <font face="Arial" color="#FF0000"> </span> <span lang="en-us"> 500</span></font><font face="Arial" color="#FF0000">元/人</font></b></p> </td> </tr> </table> </div></td> </tr> </table></td> </tr> <tr> <td height="182" valign="top" width="455"> <table width="447" border="0" align="center" height="239"> <tr> <td width="441" height="162"><div align="center"> <img src="img/hy.jpg" width="267" height="173"></div></td> </tr> <tr> <td height="58"> <blockquote> <p style="margin-top: 5; margin-bottom: 5"><font size="2" face="幼圆">顾问背景:</font></p> <p style="margin-top: 5; margin-bottom: 5"><font size="2">来自海外专家(美国、加拿大、新加坡),拥有超过10年以上项目管理经验,学员评价优秀率达95%</font></p> </blockquote> </td> </tr> </table></td> </tr> <tr> <td width="780" height="59" valign="top" colspan="2"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="780" id="AutoNumber2"> <tr bgcolor="#0066CC"> <td width="251"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">上海办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>21-28909726 传真:28909223</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 地址:上海浦东世纪大道88号金茂大厦31楼</font></td> <td width="264" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">北京办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>10-65900671 传真:65900670</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2">地址:</font><font color="#FFFFFF" style="font-size: 9pt">北京市朝阳区东三环北路8号亮马大厦5楼</font></td> <td width="265" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">深圳办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>755-83263526 传真:83674402</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 地址:深圳市深南中路世界贸易广场B座14楼F</font></td> </tr> </table> </td> </tr> </table></td> </tr> </table> </center> </div> </body> </html> |
|
From: <as...@cy...> - 2002-11-28 11:44:35
|
<html> <head><base href=http://www.cyberway-canada.com/pminew/INDEX.HTM> <meta http-equiv="Content-Language" content="zh-cn"> <meta name="GENERATOR" content="Microsoft FrontPage 5.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>赛百威第77期成功的项目管理集训</title> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_reloadPage(init) { //reloads the window if Nav4 resized if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) { document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }} else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload(); } MM_reloadPage(true); //--> </script> </head> <body topmargin="0"> <div align="center"> <center> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="780" id="AutoNumber1"> <tr> <td width="778" height="156"> <div align="center"><img src="../images/pmi77.gif" width="778" height="186"></div></td> </tr> <tr> <td width="100%"> <p style="margin-top: 8; margin-bottom: 8"><br> <img border="0" src="img/BD21364_.gif" width="15" height="15"><font size="2"> 30%精典案例,30%练习,40%理论基础,实用与认证并重之集训</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 中文授课学员满意度比外籍教师授课高出5-10个百分点,推荐率高达98%以上</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 本课程可获得PMI的18个PDU(专业发展学分,考PMP必修之学分)</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 该课程已成功举办了近<span lang="en-us">80</span>期,近200家大型企业,近3000人次的学员通过本课程,该课程已获国家专利局注册</font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 目标学员:<font color="#FF0000">中高层管理干部、企业职能部门经理、企业的项目经理、项目的参与人员、政府部门的管理人员</font></font></p> <p style="margin-top: 8; margin-bottom: 8"> <font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 课程内容:以《PMBOK2000》9大知识体系结构,注重5大项目管理过程的应用课程 </font> <div id="Layer1" style="position:absolute; left:556px; top:188px; width:235px; height:324px; z-index:-1; background-color: #FFFFFF; layer-background-color: #FFFFFF;"> <table width="93%" height="324" border="0"> <tr> <td height="205" valign="top"><img src="../image/home/cyberlogo.gif" width="230" height="60"></td> </tr> <tr> <td height="81"> <img border="0" src="../image/home/replogo.gif" width="220" height="58"></td> </tr> <tr> <td height="30"><img src="img/mslogo.jpg" width="160" height="25"><font size="1"><em>PM Tools </em></font></td> </tr> </table> </div></td> </tr> <tr> <td width="100%"> <p><img border="0" src="img/BD21364_.gif" width="15" height="15"><font size="2"> 主办单位:美国项目管理协会(PMI)</font></p> <p><font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 承办单位:赛百威(国际)联盟教育机构(中国首家PMI Global级注册机构)</font></p> <p><font size="2"><img border="0" src="img/BD21364_.gif" width="15" height="15"> 赞助单位:微软(中国)有限公司亚太总部</font></td> </tr> <tr> <td width="100%"> </td> </tr> <tr> <td width="100%" valign="top"> <table width="780" height="41" border="0" align="left"> <tr> <td width="325" height="392" rowspan="2" valign="top" background="img/jmbui.jpg"> <p style="margin-top: 4; margin-bottom: 4"> <img border="0" src="img/BD21364_.gif" width="15" height="15">开课时间:</p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月06、07日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月13、14日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月15、16日(周日、一)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月20、21日(周五、六)</font></p> <p style="margin-top: 4; margin-bottom: 4"><font size="2"> 2002年12月28、29日(周六、日)</font></p> <p style="margin-top: 4; margin-bottom: 4"> </p> <div align="right"> <table width="230" height="241" border="1" cellpadding="0" cellspacing="0" bordercolor="#FF0000" id="AutoNumber6" style="border-collapse: collapse"> <tr> <td width="100%" height="311" valign="top"> <div align="right"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="228" id="AutoNumber5" height="241"> <tr> <td width="9%" height="34" valign="top"> <img border="0" src="img/zly-top.gif" width="10" height="10"></td> <td colspan="2" height="34"> <font face="黑体">成功案例部分如下</font></td> <td width="7%" height="34" valign="top"> <div align="right"> <img border="0" src="img/zly-top1.gif" width="10" height="10"></div></td> </tr> <tr> <td width="9%" height="207" valign="bottom"> <div align="left"> <img border="0" src="img/zly-btm.gif" width="10" height="10"></div></td> <td width="45%" height="207" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><b> <font size="2" face="黑体">金融行业</font></b></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">建设银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">工商银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">农业银行</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>能源行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">大亚湾核电</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中国海洋石油</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中国石油天然气</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>建筑行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">香港迅捷建筑</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2"> 和记黄埔<span lang="en-us">(</span>地产<span lang="en-us">)</span></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">沿海物业</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></td> <td width="39%" height="207" valign="top"> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>电信行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东电信</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东移动</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广东联通</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><b>大型IT行业</b></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">华为技术</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">中兴通讯</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">艾默生</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2" face="黑体"><strong>政府机构</strong></font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">国土局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">贸发局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">环保局</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">……</font></td> <td width="7%" height="207" valign="bottom"> <div align="right"> <img border="0" src="img/zly-btm1.gif" width="10" height="10"></div></td> </tr> </table> </div> </td> </tr> </table> </div> </td> <td width="455" height="212" valign="top"> <table width="450" border="0" align="center" height="209"> <tr> <td width="206" height="205" valign="top"> <img border="0" src="img/BD21364_.gif" width="15" height="15">上课地点:<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="206" id="AutoNumber3" height="200"> <tr> <td width="206" height="200" valign="top" background="img/5t.jpg"> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">广州市 汇华大厦会展中心</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">北京市 兆龙饭店2楼</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">上海市 金茂大厦1楼</font></p> <p style="margin-top: 4; margin-bottom: 4"> <font size="2">深圳市 世贸广场B座<span lang="en-us">14</span>楼</font><p style="margin-top: 4; margin-bottom: 4"> <font size="2">青岛市 软件大厦 </font> <p style="margin-top: 4; margin-bottom: 4"> <p style="margin-top: 4; margin-bottom: 4"> <p style="margin-top: 4; margin-bottom: 4" align="center"><strong><a href="../pmi52/regtable.htm"> <font size="2">>>>>索取详细大纲</font></a></strong></td> </tr> </table> </td> <td width="250" valign="top" height="205"> <div align="right"> <table width="154" height="168" border="0"> <tr> <td height="25"> </td> </tr> <tr> <td valign="top" background="img/pmyw.jpg" height="166" width="151"> <font size="5" face="幼圆">特殊</font><font face="幼圆" size="7"><b>优惠</b></font><p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="幼圆"><br> <font color="#FF0000">原价</font><strike>5500</strike><font color="#FF0000">元/人</font></font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="幼圆" color="#FF0000">现价3800元/人</font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><font face="Arial" color="#FF0000">P<span lang="en-us">roject 2002</span></font></b></p> <p style="margin-top: 5; margin-bottom: 5" align="left"> <b><span lang="en-us"> <font face="Arial" color="#FF0000"> </span> <span lang="en-us"> 500</span></font><font face="Arial" color="#FF0000">元/人</font></b></p> </td> </tr> </table> </div></td> </tr> </table></td> </tr> <tr> <td height="182" valign="top" width="455"> <table width="447" border="0" align="center" height="239"> <tr> <td width="441" height="162"><div align="center"> <img src="img/hy.jpg" width="267" height="173"></div></td> </tr> <tr> <td height="58"> <blockquote> <p style="margin-top: 5; margin-bottom: 5"><font size="2" face="幼圆">顾问背景:</font></p> <p style="margin-top: 5; margin-bottom: 5"><font size="2">来自海外专家(美国、加拿大、新加坡),拥有超过10年以上项目管理经验,学员评价优秀率达95%</font></p> </blockquote> </td> </tr> </table></td> </tr> <tr> <td width="780" height="59" valign="top" colspan="2"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="780" id="AutoNumber2"> <tr bgcolor="#0066CC"> <td width="251"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">上海办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>21-28909726 传真:28909223</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 地址:上海浦东世纪大道88号金茂大厦31楼</font></td> <td width="264" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">北京办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>10-65900671 传真:65900670</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2">地址:</font><font color="#FFFFFF" style="font-size: 9pt">北京市朝阳区东三环北路8号亮马大厦5楼</font></td> <td width="265" valign="top"> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF"><b> <font face="黑体" size="2">深圳办公室:</font></b></font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 电话:<span lang="en-us">+86-</span>755-83263526 传真:83674402</font></p> <p style="margin-top: 4; margin-bottom: 4"><font color="#FFFFFF" size="2"> 地址:深圳市深南中路世界贸易广场B座14楼F</font></td> </tr> </table> </td> </tr> </table></td> </tr> </table> </center> </div> </body> </html> |
|
From: <hun...@ha...> - 2002-11-09 23:41:52
|
<html><body><pre><div><br></div><font face=华文行楷 color=#008000><b>原邮件发件人名字</b></font>:<font face=幼圆 color=#008000><strong><blink>张爱军</blink></strong></font><br><font face=华文行楷 color=#008000><b>原邮件发件人地址</b></font><font face=宋体>:</font><a href="mailto:原邮件发件人地址:za...@ey..."><font face="arial black">za...@ey...</font></a><br><br> <table width="100%"> <tbody> <tr> <td width="100%"> <blockquote style="padding-right: 0px; padding-left: 5px; margin-left: 5px; border-left: #000000 2px solid; margin-right: 0px"> <div align=center> <center> <table height=301 cellspacing=0 cellpadding=0 width=665 border=0> <tbody> <tr> <td width=665 bgcolor=#800080 height=35> <p align=center><font face=verdana color=#ffffff size=3>:</font><font color=#ffffff size=3>:</font><font face=黑体 color=#ffffff size=3> 您好</font></p></td></tr> <tr> <td valign=top width=665 bgcolor=#fcf0ff height=255> <p style="margin: 16px 20px 15px; line-height: 150%"><br><font size=2> </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 电子商务是时代潮流,但如何最高效利用互联网,抓紧中国刚加入wto的黄金时期,赶在竞争对手之前,将您的产品遍布国内外,是一大难题。<span style="background-color: #00ff00"> 我们的<b>《商智网络营销套件》v1.2 </b>提出了企业电子商务营销的一条龙解决方案。并已被全国数百家大中企业采纳。</span></font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 如果<span style="background-color: #00ff00">能在一千多家国内外大型电子商务交易场同步发布您的公司介绍、产品信息 </span>(完全自动发布)。 在互联网每一个角落搜索您产品的求购(客户)、供应(对手)信息。您就可以运筹帏幄之中,而决胜千里之外。</font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 如果能智能而准确的海量搜索客户联系邮箱,(如搜索深圳的电子公司、北京的广告公司、全国制冷行业的厂家公司、南京20~25岁的女性、全国数十万硬件工程师的邮箱,诸如此类),而且保证每一封信都被认真阅读,我们相信这对一个企业的销售是一种不可抗拒的诱惑!! </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 我们的邮件系统所搜集到的<span style="background-color: #00ff00">邮件地址,每一个都与对方公司名称(联系人姓名或网名)、公司地址、电话、传真一一对应</span>。经过筛选,有的放矢,发起来就决不会产生垃圾邮件。 不会降低您的商誉,这才是最重要的!!!</font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 这一切交给我们的《商智网络营销套件》来完成。</font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 商智网络营销套件是新一代网络营销利器。大量采用了广义上的人工智能技术、开辟了互联网数据挖掘的新纪元。他能极大程度的提高企业营销力度,提高销售额。 </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2>1、商智交易场交易信息搜索(引擎):能在1000多家国内外交易场、行业网站按照您提供的关键字搜索产品信息。自动按买方、卖方、合作代理分类,按任务保存网页快照,支持历史查询, 自动登陆搜索。 </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2>2、商智交易场信息发布:能将您的企业自动注册到1000多家国内外交易场、行业网站。能将您的产品信息同步发布到1000多家国内外交易场、行业网站。(每天发布一次,只需点一下鼠标) </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2>3、商智邮件搜集专家:他能以用户身份登陆到交易场,将注册用户一网打尽,能根据用户提供的关键字智能化向交易场、大小黄页、搜索引擎提交用户查询,遍历结果页。是(全球)唯一能全面智能化、自动化海量搜索公司(用户)全套联系方式的邮件搜集器,配合商智邮件群发。能将用户名、公司全称镶嵌在信件标题、正文的任何地方, 全智能向导帮助建立复杂任务,携带丰富、强大的邮件工具,完美的示例任务可搜索一千万携带用户姓名、公司全称的最新有效邮件地址(可能随时更新)。内置二十个顶级搜索引擎、全国各地大小黄页、近一千个交易场,已经全模板配置(用户可以添加交易场搜索,并且特别方便),傻瓜化操作、黑客式功能。 </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2>4、商智邮件群发: 配合商智邮件搜集专家,100%发送有效邮件地址,最高100条线程运行,每分钟发送1000封。多重失败重试机制,完全客户端oem定制(可定义为企业自己的邮件发送器标志),完全相同于ms-outlook 的信件格式(无法根据发送器来据收)。 </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 1、内建smtp服务器 </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 2、内建dns域名解析(国内首创,提高速度用) </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 3、外部smtp代理服务器 </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 4、外部dns域名解析服务器 </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 5、直接 web 发送。 ....... 直到有效邮件成功发送。 </font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2>独特指出:</font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2> 自动将公司名称、收信人姓名替换在信件的任何指定地方。可提前指定天数发信。容量达十万级的屏蔽邮件列表(永不发送)、n天不重复发送信件功能,当然也可匿名发信,但我们不提倡! 能发送多种信件,能发送多种邮件地址包,能发送直接从数据库中导出的邮件数据,数据模板自动替换。点击率90%以上(超过电视、报刊广告,且针对性高),回信率也非常高。 !!!完全不同于以往的邮件系统。</font> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2>购买产品或代理合作详细细节请电话咨询。</font> <p style="margin: 16px 20px 15px; line-height: 150%"><span style="background-color: #008000"><font color=#ffffff size=2>0755-26530012 26530145 <b>张爱军 </b></font></span> <p style="margin: 16px 20px 15px; line-height: 150%"><font size=2>恭颂商祺</font> <p style="margin: 16px 20px 15px; line-height: 150%"> <p style="margin: 16px 20px 15px; line-height: 150%"><a href="/"><img height=49 src="/" width=146 border=0></a> <em><u><font face=仿宋_gb2312 color=#ff00ff size=3></font></u></em></p></td></center> <tr> <td valign=top width=665 bgcolor=#fcf0ff height=33> <p align=right><font size=2> 张爱军 瑾上 </font> <p align=right><font size=2>2002 年 11月 </font></p></tr></tbody></div></blockquote></tr></tbody></table> </pre></body></html> |
|
From: <ma...@sz...> - 2002-10-26 17:34:13
|
http://www.szxt.com 深圳市旭振电气技术有限公司致力于在电力、通信及相关领域为客户提供一流的设备和 服务,主要产品涵盖了高频开关电源(含电力操作电源、电力专用DC/DC变换器、 铃流发生器、通信用AC/DC变换器、DC/DC变换器、IT设备用Adapter等)、高频逆变电源、 蓄电池有源逆变放电装置、蓄电池监测管理系统、智能准同期控制器、无功补偿装置等, 产品已广泛应用在电力、通信、军队、交通、石化、水利、医疗仪器等多个领域。 深圳市旭振电气技术有限公司以客户满意度为工作的评价标准,以客户的价值观为导 向,以人为本,不断创新、追求产品高品质、服务贴近用户,实现对客户的承诺。 联系人:袁小姐 电话:0755-26492926 26492630 Email:ma...@sz... 祝 商 琪 |
|
From: Internet M. D. <pos...@ms...> - 2002-10-24 23:42:44
|
This report relates to a message you sent with the following header f= ields: Return-path: <bee...@li...> Return-path: <bee...@li...> Received: from ims-ms-daemon.ms.ce.net.cn by ms.ce.net.cn (iPlanet Messaging Server 5.0 Patch 3 (built Mar 23 2001)) id <0H4...@ms...> (original mail from bee...@li...); = Fri, 25 Oct 2002 07:36:28 +0800 (CST) Received: from praxair-bpi.com ([218.17.92.76]) by ms.ce.net.cn (iPlanet Messaging Server 5.0 Patch 3 (built Mar 2= 3 2001)) with ESMTP id <0H4...@ms...> for bpi%praxair-bpi.com@ims-ms-daemon (ORCPT bp...@pr...); Fri= , 25 Oct 2002 07:36:27 +0800 (CST) Date: Fri, 25 Oct 2002 07:41:54 +0800 From: bee...@li... Subject: =3D?GB2312?B?o7rE47rDo6E=3D?=3D To: bp...@pr... Reply-to: za...@ey... Message-id: <0H4...@ms...> MIME-version: 1.0 X-Mailer: Microsoft Outlook Express 5.50.4133.2400 Content-type: text/plain; charset=3DGB2312 Content-transfer-encoding: 8BIT X-Priority: 3 Your message cannot be delivered to the following recipients: Recipient address: bpi%praxair-bpi.com@ims-ms-daemon Original address: bp...@pr... Reason: Over quota |
|
From: Huston F. <hu...@us...> - 2002-10-15 05:01:02
|
Update of /cvsroot/beepcore-java/beepcore-java
In directory usw-pr-cvs1:/tmp/cvs-serv32329
Modified Files:
build.xml
Added Files:
build.properties.sample
Log Message:
build file cleanup for commons-logging and added build.properties file
--- NEW FILE: build.properties.sample ---
debug="on"
optimize="on"
deprecation="off"
concurrent.jar=${basedir}/lib/concurrent.jar
commons-logging.jar=${basedir}/lib/commons-logging.jar
xml-parser.jar=${basedir}/lib/xerces.jar
cryptix.jar=${basedir}/lib/cryptix32.jar
cryptix-asn1.jar=${basedir}/lib/cryptix-asn1.jar
puretls.jar=${basedir}/lib/puretls.jar
Index: build.xml
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/build.xml,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -r1.23 -r1.24
*** build.xml 18 Sep 2002 14:31:09 -0000 1.23
--- build.xml 15 Oct 2002 05:00:53 -0000 1.24
***************
*** 1,3 ****
--- 1,7 ----
<project name="beepcore" default="core-jar" basedir=".">
+
+ <!-- The build.properties file defines the parth to local jar files -->
+ <property file="build.properties"/>
+
<property name="name" value="beepcore" />
<property name="Name" value="BEEP Core" />
***************
*** 7,11 ****
<property name="debug" value="on"/>
<property name="optimize" value="on"/>
! <property name="deprecation" value="on"/>
<property name="beepcore.home" value="."/>
--- 11,22 ----
<property name="debug" value="on"/>
<property name="optimize" value="on"/>
! <property name="deprecation" value="off"/>
!
! <!-- Construct classpath for building core -->
! <path id="core.compile.classpath">
! <pathelement location="${concurrent.jar}"/>
! <pathelement location="${commons-logging.jar}"/>
! <pathelement location="${xml-parser.jar}"/>
! </path>
<property name="beepcore.home" value="."/>
***************
*** 13,16 ****
--- 24,28 ----
<property name="release.dir" value="${build.dir}/${release.name}" />
+ <!-- Core properties -->
<property name="core.build.dir" value="${build.dir}/core" />
<property name="core.doc.dir" value="${release.dir}/doc/core" />
***************
*** 19,22 ****
--- 31,43 ----
<property name="core.packages" value="org.beepcore.beep.core,org.beepcore.beep.util,org.beepcore.beep.transport.tcp,org.beepcore.beep.lib,org.beepcore.beep.profile,org.beepcore.beep.profile.echo,org.beepcore.beep.profile.tls"/>
+ <property name="source.jar.name" value="beepsource.jar"/>
+
+ <!-- Construct classpath for building sub-projects -->
+ <path id="compile.classpath">
+ <path refid="core.compile.classpath"/>
+ <pathelement location="${release.dir}/lib/${core.jar.name}"/>
+ </path>
+
+ <!-- Examples properties -->
<property name="example.build.dir" value="${build.dir}/example" />
<property name="example.jar.name" value="example.jar" />
***************
*** 25,32 ****
<property name="jdk.doc.dir" value="doc/jdk" />
! <property name="jsse.doc.dir" value="doc/jsse" />
!
! <property name="puretls.doc.dir" value="doc/puretls" />
!
<property name="sasl.build.dir" value="${build.dir}/sasl"/>
<property name="sasl.doc.dir" value="${release.dir}/doc/sasl"/>
--- 46,50 ----
<property name="jdk.doc.dir" value="doc/jdk" />
! <!-- SASL properties -->
<property name="sasl.build.dir" value="${build.dir}/sasl"/>
<property name="sasl.doc.dir" value="${release.dir}/doc/sasl"/>
***************
*** 34,55 ****
<property name="sasl.src.dir" value="src"/>
! <property name="source.jar.name" value="beepsource.jar"/>
!
! <property name="test.build.dir" value="${build.dir}/test" />
! <property name="test.src.dir" value="test" />
!
<property name="tls-jsse.build.dir" value="${build.dir}/tls-jsse" />
<property name="tls-jsse.doc.dir" value="${release.dir}/doc/tls-jsse" />
<property name="tls-jsse.jar.name" value="beeptls-jsse.jar" />
<property name="tls-ptls.build.dir" value="${build.dir}/tls-ptls" />
<property name="tls-ptls.doc.dir" value="${release.dir}/doc/tls-ptls" />
<property name="tls-ptls.jar.name" value="beeptls-ptls.jar" />
<property name="tls.src.dir" value="tls" />
<property name="doc-ref-offline" value="false" />
! <target name="init">
<mkdir dir="${core.build.dir}" />
<condition property="javadoc.param" value="-breakiterator">
--- 52,81 ----
<property name="sasl.src.dir" value="src"/>
! <!-- JSSE TLS properties -->
<property name="tls-jsse.build.dir" value="${build.dir}/tls-jsse" />
<property name="tls-jsse.doc.dir" value="${release.dir}/doc/tls-jsse" />
<property name="tls-jsse.jar.name" value="beeptls-jsse.jar" />
+ <property name="jsse.doc.dir" value="doc/jsse" />
+
+ <!-- PTLS TLS properties -->
<property name="tls-ptls.build.dir" value="${build.dir}/tls-ptls" />
<property name="tls-ptls.doc.dir" value="${release.dir}/doc/tls-ptls" />
<property name="tls-ptls.jar.name" value="beeptls-ptls.jar" />
+ <property name="puretls.doc.dir" value="doc/puretls" />
+
+ <!-- TLS properties -->
<property name="tls.src.dir" value="tls" />
<property name="doc-ref-offline" value="false" />
! <!-- Test properties -->
! <property name="test.build.dir" value="${build.dir}/test" />
! <property name="test.src.dir" value="test" />
!
!
!
! <target name="-init">
<mkdir dir="${core.build.dir}" />
<condition property="javadoc.param" value="-breakiterator">
***************
*** 62,72 ****
</target>
! <target name="core" depends="init">
<mkdir dir="${core.build.dir}"/>
<javac srcdir="${core.src.dir}/"
destdir="${core.build.dir}"
! debug="${debug}"
! optimize="${optimize}"
! deprecation="${deprecation}">
<include name="**/core/*.java"/>
<include name="**/lib/*.java"/>
--- 88,100 ----
</target>
! <!-- Core targets -->
! <target name="core" depends="-init">
<mkdir dir="${core.build.dir}"/>
<javac srcdir="${core.src.dir}/"
destdir="${core.build.dir}"
! classpathref="core.compile.classpath"
! debug="${debug}"
! optimize="${optimize}"
! deprecation="${deprecation}">
<include name="**/core/*.java"/>
<include name="**/lib/*.java"/>
***************
*** 76,84 ****
<include name="**/transport/**/*.java"/>
<include name="**/util/*.java"/>
- <classpath>
- <pathelement path="${java.class.path}"/>
- <pathelement location="${beepcore.home}/lib/concurrent.jar"/>
- <pathelement location="${release.dir}/lib/${core.jar.name}"/>
- </classpath>
</javac>
</target>
--- 104,107 ----
***************
*** 102,110 ****
additionalparam="${javadoc.param}"
bottom="Copyright © 2001 Invisible Worlds, Inc. All Rights Reserved.">
! <classpath>
! <pathelement path="${java.class.path}"/>
! <pathelement location="${beepcore.home}/lib/concurrent.jar"/>
! <pathelement location="${release.dir}/lib/${core.jar.name}"/>
! </classpath>
</javadoc>
</target>
--- 125,129 ----
additionalparam="${javadoc.param}"
bottom="Copyright © 2001 Invisible Worlds, Inc. All Rights Reserved.">
! <classpath refid="compile.classpath"/>
</javadoc>
</target>
***************
*** 128,132 ****
basedir="${build.dir}/src"/>
! <copy file="lib/concurrent.jar"
tofile="${release.dir}/lib/concurrent.jar"/>
<copy file="lib/xerces.jar"
--- 147,151 ----
basedir="${build.dir}/src"/>
! <copy file="${concurrent.jar}"
tofile="${release.dir}/lib/concurrent.jar"/>
<copy file="lib/xerces.jar"
***************
*** 150,153 ****
--- 169,173 ----
</target>
+ <!-- Example targets -->
<target name="example-compile" depends="core-jar,sasl">
<mkdir dir="${example.build.dir}"/>
***************
*** 159,164 ****
<exclude name="**/util/Log4JLog.java"/>
<classpath>
! <pathelement path="${java.class.path}"/>
! <pathelement location="${release.dir}/lib/${core.jar.name}"/>
<pathelement location="${release.dir}/lib/${sasl.jar.name}"/>
</classpath>
--- 179,183 ----
<exclude name="**/util/Log4JLog.java"/>
<classpath>
! <path refid="compile.classpath"/>
<pathelement location="${release.dir}/lib/${sasl.jar.name}"/>
</classpath>
***************
*** 166,170 ****
</target>
! <target name="example" depends="example-compile,log4jlog,14log">
<mkdir dir="${release.dir}/lib"/>
<jar jarfile="${release.dir}/lib/${example.jar.name}"
--- 185,189 ----
</target>
! <target name="example" depends="example-compile">
<mkdir dir="${release.dir}/lib"/>
<jar jarfile="${release.dir}/lib/${example.jar.name}"
***************
*** 184,200 ****
</target>
! <target name="ptls-dist" depends="tls-ptls">
! <copy file="lib/cryptix32.jar"
! tofile="${release.dir}/lib/cryptix32.jar"/>
! <copy file="lib/cryptix-asn1.jar"
! tofile="${release.dir}/lib/cryptix-asn1.jar"/>
! <copy file="lib/puretls.jar"
! tofile="${release.dir}/lib/puretls.jar"/>
! <copy file="lib/LICENSE.cryptix"
! tofile="${release.dir}/LICENSE.cryptix"/>
! <copy file="lib/LICENSE.puretls"
! tofile="${release.dir}/LICENSE.puretls"/>
! </target>
!
<target name="test" depends="example">
<mkdir dir="${test.build.dir}"/>
--- 203,207 ----
</target>
! <!-- Test targets -->
<target name="test" depends="example">
<mkdir dir="${test.build.dir}"/>
***************
*** 206,211 ****
<include name="**/*.java"/>
<classpath>
! <pathelement path="${java.class.path}"/>
! <pathelement location="${release.dir}/lib/${core.jar.name}"/>
<pathelement location="${release.dir}/lib/${sasl.jar.name}"/>
<pathelement location="${example.build.dir}"/>
--- 213,217 ----
<include name="**/*.java"/>
<classpath>
! <path refid="compile.classpath"/>
<pathelement location="${release.dir}/lib/${sasl.jar.name}"/>
<pathelement location="${example.build.dir}"/>
***************
*** 214,229 ****
</target>
<target name="sasl-compile" depends="core-jar">
<mkdir dir="${sasl.build.dir}"/>
<javac srcdir="${sasl.src.dir}/"
destdir="${sasl.build.dir}"
debug="${debug}"
optimize="${optimize}"
deprecation="${deprecation}">
<include name="**/sasl/**/*.java"/>
- <classpath>
- <pathelement path="${java.class.path}"/>
- <pathelement location="${release.dir}/lib/${core.jar.name}"/>
- </classpath>
</javac>
</target>
--- 220,233 ----
</target>
+ <!-- SASL targets -->
<target name="sasl-compile" depends="core-jar">
<mkdir dir="${sasl.build.dir}"/>
<javac srcdir="${sasl.src.dir}/"
destdir="${sasl.build.dir}"
+ classpathref="compile.classpath"
debug="${debug}"
optimize="${optimize}"
deprecation="${deprecation}">
<include name="**/sasl/**/*.java"/>
</javac>
</target>
***************
*** 247,252 ****
bottom="Copyright © 2001 Invisible Worlds, Inc. All Rights Reserved.">
<classpath>
! <pathelement path="${java.class.path}"/>
! <pathelement location="${release.dir}/lib/${core.jar.name}"/>
<pathelement location="${release.dir}/lib/${sasl.jar.name}"/>
</classpath>
--- 251,255 ----
bottom="Copyright © 2001 Invisible Worlds, Inc. All Rights Reserved.">
<classpath>
! <path refid="compile.classpath"/>
<pathelement location="${release.dir}/lib/${sasl.jar.name}"/>
</classpath>
***************
*** 254,269 ****
</target>
<target name="tls-jsse-compile" depends="core-jar">
<mkdir dir="${tls-jsse.build.dir}"/>
<javac srcdir="${tls.src.dir}/"
destdir="${tls-jsse.build.dir}"
debug="${debug}"
optimize="${optimize}"
! deprecation="off">
<include name="**/jsse/*.java"/>
- <classpath>
- <pathelement path="${java.class.path}"/>
- <pathelement location="${release.dir}/lib/${core.jar.name}"/>
- </classpath>
</javac>
</target>
--- 257,270 ----
</target>
+ <!-- JSSE targets -->
<target name="tls-jsse-compile" depends="core-jar">
<mkdir dir="${tls-jsse.build.dir}"/>
<javac srcdir="${tls.src.dir}/"
destdir="${tls-jsse.build.dir}"
+ classpathref="compile.classpath"
debug="${debug}"
optimize="${optimize}"
! deprecation="${deprecation}">
<include name="**/jsse/*.java"/>
</javac>
</target>
***************
*** 298,302 ****
packagelistLoc="${core.doc.dir}" />
<classpath>
! <pathelement path="${java.class.path}"/>
<pathelement location="${release.dir}/lib/${core.jar.name}"/>
<pathelement location="${release.dir}/lib/${tls-jsse.jar.name}"/>
--- 299,303 ----
packagelistLoc="${core.doc.dir}" />
<classpath>
! <path refid="core.compile.classpath"/>
<pathelement location="${release.dir}/lib/${core.jar.name}"/>
<pathelement location="${release.dir}/lib/${tls-jsse.jar.name}"/>
***************
*** 305,308 ****
--- 306,310 ----
</target>
+ <!-- PTLS targets -->
<target name="tls-ptls-compile" depends="core-jar">
<mkdir dir="${tls-ptls.build.dir}"/>
***************
*** 314,319 ****
<include name="**/ptls/*.java"/>
<classpath>
! <pathelement path="${java.class.path}"/>
! <pathelement location="${release.dir}/lib/${core.jar.name}"/>
</classpath>
</javac>
--- 316,323 ----
<include name="**/ptls/*.java"/>
<classpath>
! <path refid="compile.classpath"/>
! <pathelement location="${cryptix.jar}"/>
! <pathelement location="${cryptix-asn1.jar}"/>
! <pathelement location="${puretls.jar}"/>
</classpath>
</javac>
***************
*** 344,349 ****
packagelistLoc="${core.doc.dir}" />
<classpath>
! <pathelement path="${java.class.path}"/>
! <pathelement location="${release.dir}/lib/${core.jar.name}"/>
<pathelement location="${release.dir}/lib/${tls-ptls.jar.name}"/>
</classpath>
--- 348,355 ----
packagelistLoc="${core.doc.dir}" />
<classpath>
! <path refid="compile.classpath"/>
! <pathelement location="${cryptix.jar}"/>
! <pathelement location="${cryptix-asn1.jar}"/>
! <pathelement location="${puretls.jar}"/>
<pathelement location="${release.dir}/lib/${tls-ptls.jar.name}"/>
</classpath>
***************
*** 351,355 ****
</target>
! <target name="doc" depends="core-doc,sasl-doc,tls-jsse-doc,tls-ptls-doc"/>
<!-- Packages the distribution with ZIP -->
--- 357,372 ----
</target>
! <target name="ptls-dist" depends="tls-ptls">
! <copy file="lib/cryptix32.jar"
! tofile="${release.dir}/lib/cryptix32.jar"/>
! <copy file="lib/cryptix-asn1.jar"
! tofile="${release.dir}/lib/cryptix-asn1.jar"/>
! <copy file="lib/puretls.jar"
! tofile="${release.dir}/lib/puretls.jar"/>
! <copy file="lib/LICENSE.cryptix"
! tofile="${release.dir}/LICENSE.cryptix"/>
! <copy file="lib/LICENSE.puretls"
! tofile="${release.dir}/LICENSE.puretls"/>
! </target>
<!-- Packages the distribution with ZIP -->
***************
*** 370,418 ****
<target name="dist" depends="dist-zip,dist-tgz"/>
<target name="clean">
<delete dir="${build.dir}" />
<delete dir="${doc.dir}" />
- </target>
-
- <target name="log4jCheck">
- <available classname="org.apache.log4j.Category"
- property="log4j-present"
- classpath="${java.class.path}"/>
- </target>
-
- <target name="log4jlog" depends="init,core-jar,log4jCheck" if="log4j-present">
- <mkdir dir="${example.build.dir}"/>
- <javac srcdir="${example.src.dir}/"
- destdir="${example.build.dir}"
- debug="${debug}"
- optimize="${optimize}"
- deprecation="${deprecation}">
- <include name="**/util/Log4JLog.java"/>
- <classpath>
- <pathelement path="${java.class.path}"/>
- <pathelement location="${release.dir}/lib/${core.jar.name}"/>
- </classpath>
- </javac>
- </target>
-
- <target name="14LoggingCheck">
- <available classname="java.util.loggin.Logger"
- property="14logging-present"
- classpath="${java.class.path}"/>
- </target>
-
- <target name="14log" depends="init,core-jar,14LoggingCheck" if="14logging-present">
- <mkdir dir="${example.build.dir}"/>
- <javac srcdir="${example.src.dir}/"
- destdir="${example.build.dir}"
- debug="${debug}"
- optimize="${optimize}"
- deprecation="${deprecation}">
- <include name="**/util/BeepLogger.java"/>
- <classpath>
- <pathelement path="${java.class.path}"/>
- <pathelement location="${release.dir}/lib/${core.jar.name}"/>
- </classpath>
- </javac>
</target>
</project>
--- 387,395 ----
<target name="dist" depends="dist-zip,dist-tgz"/>
+ <target name="doc" depends="core-doc,sasl-doc,tls-jsse-doc,tls-ptls-doc"/>
+
<target name="clean">
<delete dir="${build.dir}" />
<delete dir="${doc.dir}" />
</target>
</project>
|
|
From: Huston F. <hu...@us...> - 2002-10-05 15:46:39
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/util In directory usw-pr-cvs1:/tmp/cvs-serv16187/src/org/beepcore/beep/util Removed Files: Log.java ConsoleLog.java LogService.java Log Message: changed to use commons-logging --- Log.java DELETED --- --- ConsoleLog.java DELETED --- --- LogService.java DELETED --- |
|
From: Huston F. <hu...@us...> - 2002-10-05 15:45:59
|
Update of /cvsroot/beepcore-java/beepcore-java/tls/org/beepcore/beep/profile/tls/jsse
In directory usw-pr-cvs1:/tmp/cvs-serv15890/tls/org/beepcore/beep/profile/tls/jsse
Modified Files:
TLSProfileJSSE.java
Log Message:
changed to use commons-logging
Index: TLSProfileJSSE.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/tls/org/beepcore/beep/profile/tls/jsse/TLSProfileJSSE.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** TLSProfileJSSE.java 7 Sep 2002 15:13:12 -0000 1.6
--- TLSProfileJSSE.java 5 Oct 2002 15:45:56 -0000 1.7
***************
*** 42,45 ****
--- 42,48 ----
import java.io.FileInputStream;
+ import org.apache.commons.logging.Log;
+ import org.apache.commons.logging.LogFactory;
+
/**
***************
*** 122,125 ****
--- 125,130 ----
static SSLSocketFactory socketFactory = null;
+ private Log log = LogFactory.getLog(this.getClass());
+
// listeners to update when an SSL handshake completes
// static List handshakeListeners = null;
***************
*** 140,144 ****
public void handshakeCompleted(HandshakeCompletedEvent event)
{
! Log.logEntry(Log.SEV_DEBUG, "HandshakeCompleted");
synchronized (handshakeListeners) {
Iterator i = TLSProfileJSSE.handshakeListeners.iterator();
--- 145,149 ----
public void handshakeCompleted(HandshakeCompletedEvent event)
{
! log.debug("HandshakeCompleted");
synchronized (handshakeListeners) {
Iterator i = TLSProfileJSSE.handshakeListeners.iterator();
***************
*** 196,202 ****
socketFactory = (SSLSocketFactory) ctx.getSocketFactory();
} catch (NoSuchAlgorithmException e) {
! Log.logEntry(1, "JSSE TLS Profile", e.getMessage());
} catch (KeyManagementException e) {
! Log.logEntry(1, "JSSE TLS Profile", e.getMessage());
}
--- 201,207 ----
socketFactory = (SSLSocketFactory) ctx.getSocketFactory();
} catch (NoSuchAlgorithmException e) {
! log.error(e.getMessage());
} catch (KeyManagementException e) {
! log.error(e.getMessage());
}
***************
*** 426,430 ****
return this;
} catch (Exception e) {
! Log.logEntry(Log.SEV_ERROR, e);
throw new BEEPException(e.getMessage());
--- 431,435 ----
return this;
} catch (Exception e) {
! log.error(e);
throw new BEEPException(e.getMessage());
***************
*** 529,533 ****
// @todo should be more detailed
! Log.logEntry(Log.SEV_ERROR, x.getMessage());
throw new StartChannelException(450, x.getMessage());
--- 534,538 ----
// @todo should be more detailed
! log.error(x.getMessage());
throw new StartChannelException(450, x.getMessage());
***************
*** 549,553 ****
public void closeChannel(Channel channel) throws CloseChannelException
{
! Log.logEntry(Log.SEV_DEBUG, "Closing TLS channel.");
}
--- 554,558 ----
public void closeChannel(Channel channel) throws CloseChannelException
{
! log.debug("Closing TLS channel.");
}
***************
*** 589,598 ****
String data = ch.getStartData();
! Log.logEntry(Log.SEV_DEBUG, "Got start data of " + data);
// Consider the data (see if it's proceed)
if ((data == null)
! || (!data.equals(PROCEED1) &&!data.equals(PROCEED2))) {
! Log.logEntry(Log.SEV_ERROR, "Invalid reply: " + data);
throw new BEEPException(ERR_EXPECTED_PROCEED);
}
--- 594,606 ----
String data = ch.getStartData();
! if (log.isDebugEnabled()) {
! log.debug("Got start data of " + data);
! }
// Consider the data (see if it's proceed)
if ((data == null)
! || (!data.equals(PROCEED1) &&!data.equals(PROCEED2)))
! {
! log.error("Invalid reply: " + data);
throw new BEEPException(ERR_EXPECTED_PROCEED);
}
***************
*** 619,625 ****
l.session = session;
! Log.logEntry(Log.SEV_DEBUG, "Handshake starting");
newSocket.startHandshake();
! Log.logEntry(Log.SEV_DEBUG, "Handshake returned");
synchronized (l) {
--- 627,633 ----
l.session = session;
! log.debug("Handshake starting");
newSocket.startHandshake();
! log.debug("Handshake returned");
synchronized (l) {
***************
*** 632,644 ****
}
}
! Log.logEntry(Log.SEV_DEBUG, "Handshake done waiting");
} catch (javax.net.ssl.SSLException e) {
! Log.logEntry(Log.SEV_ERROR, e);
throw new BEEPException(e.getMessage());
} catch (java.io.IOException e) {
! Log.logEntry(Log.SEV_ERROR, e);
throw new BEEPException(ERR_TLS_SOCKET);
} catch (InterruptedException e) {
! Log.logEntry(Log.SEV_ERROR, e);
throw new BEEPException(ERR_TLS_HANDSHAKE_WAIT);
}
--- 640,652 ----
}
}
! log.debug("Handshake done waiting");
} catch (javax.net.ssl.SSLException e) {
! log.error(e);
throw new BEEPException(e.getMessage());
} catch (java.io.IOException e) {
! log.error(e);
throw new BEEPException(ERR_TLS_SOCKET);
} catch (InterruptedException e) {
! log.error(e);
throw new BEEPException(ERR_TLS_HANDSHAKE_WAIT);
}
|
|
From: Huston F. <hu...@us...> - 2002-10-05 15:45:59
|
Update of /cvsroot/beepcore-java/beepcore-java/tls/org/beepcore/beep/profile/tls/ptls
In directory usw-pr-cvs1:/tmp/cvs-serv15890/tls/org/beepcore/beep/profile/tls/ptls
Modified Files:
TLSProfilePureTLS.java
Log Message:
changed to use commons-logging
Index: TLSProfilePureTLS.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/tls/org/beepcore/beep/profile/tls/ptls/TLSProfilePureTLS.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -r1.5 -r1.6
*** TLSProfilePureTLS.java 9 Nov 2001 18:41:23 -0000 1.5
--- TLSProfilePureTLS.java 5 Oct 2002 15:45:56 -0000 1.6
***************
*** 25,33 ****
import java.security.PrivateKey;
import org.beepcore.beep.core.*;
import org.beepcore.beep.profile.*;
import org.beepcore.beep.profile.tls.TLSProfile;
import org.beepcore.beep.transport.tcp.*;
- import org.beepcore.beep.util.*;
import COM.claymoresystems.ptls.*;
--- 25,35 ----
import java.security.PrivateKey;
+ import org.apache.commons.logging.Log;
+ import org.apache.commons.logging.LogFactory;
+
import org.beepcore.beep.core.*;
import org.beepcore.beep.profile.*;
import org.beepcore.beep.profile.tls.TLSProfile;
import org.beepcore.beep.transport.tcp.*;
import COM.claymoresystems.ptls.*;
***************
*** 110,113 ****
--- 112,117 ----
"Private Key Type";
+ private Log log = LogFactory.getLog(this.getClass());
+
// properties set from the configuration
boolean needPeerAuth = true;
***************
*** 403,415 ****
oldSocket.getPort(), SSLSocket.SERVER);
} catch (BEEPException e) {
! Log.logEntry(Log.SEV_ERROR, e.getMessage());
e.printStackTrace();
oldSession.terminate(e.getMessage());
} catch (SSLThrewAlertException e) {
! Log.logEntry(Log.SEV_ERROR, e.getMessage());
e.printStackTrace();
oldSession.terminate(e.getMessage());
} catch (IOException e) {
! Log.logEntry(Log.SEV_ERROR, e.getMessage());
e.printStackTrace();
oldSession.terminate(e.getMessage());
--- 407,419 ----
oldSocket.getPort(), SSLSocket.SERVER);
} catch (BEEPException e) {
! log.error(e.getMessage());
e.printStackTrace();
oldSession.terminate(e.getMessage());
} catch (SSLThrewAlertException e) {
! log.error(e.getMessage());
e.printStackTrace();
oldSession.terminate(e.getMessage());
} catch (IOException e) {
! log.error(e.getMessage());
e.printStackTrace();
oldSession.terminate(e.getMessage());
***************
*** 423,429 ****
cc = newSocket.getCertificateChain();
if (cc == null) {
! Log.logEntry(Log.SEV_DEBUG_VERBOSE,
! "No certificate chain when there should " +
! "be one. ");
throw new StartChannelException(550, "No certificate " +
"chain when there " +
--- 427,431 ----
cc = newSocket.getCertificateChain();
if (cc == null) {
! log.trace("No certificate chain when there should be one.");
throw new StartChannelException(550, "No certificate " +
"chain when there " +
***************
*** 435,444 ****
String subject = cert.getSubjectName().getNameString();
String issuer = cert.getIssuerName().getNameString();
! Log.logEntry(Log.SEV_DEBUG_VERBOSE,
! "Name = " + subject + " issued by " + issuer);
}
} else {
! Log.logEntry(Log.SEV_DEBUG_VERBOSE,
! "No peer authentication needed");
}
--- 437,446 ----
String subject = cert.getSubjectName().getNameString();
String issuer = cert.getIssuerName().getNameString();
! if (log.isTraceEnabled()) {
! log.trace("Name = " + subject + " issued by " + issuer);
! }
}
} else {
! log.trace("No peer authentication needed");
}
***************
*** 490,494 ****
// @todo should be more detailed
! Log.logEntry(Log.SEV_ERROR, x.getMessage());
x.printStackTrace();
--- 492,496 ----
// @todo should be more detailed
! log.error(x.getMessage());
x.printStackTrace();
***************
*** 517,521 ****
public void closeChannel(Channel channel) throws CloseChannelException
{
! Log.logEntry(Log.SEV_DEBUG, "Closing TLS channel.");
}
--- 519,523 ----
public void closeChannel(Channel channel) throws CloseChannelException
{
! log.debug("Closing TLS channel.");
}
***************
*** 563,567 ****
}
! Log.logEntry(Log.SEV_DEBUG, "Staring TLS channel.");
// Freeze IO and get the socket and reset it to TLS
--- 565,569 ----
}
! log.debug("Staring TLS channel.");
// Freeze IO and get the socket and reset it to TLS
***************
*** 598,603 ****
cc = newSocket.getCertificateChain();
if (cc == null) {
! Log.logEntry(Log.SEV_DEBUG_VERBOSE, "No certificate " +
! "chain when there should be one. ");
throw new BEEPException("No certificate chain when " +
"there should be one. ");
--- 600,604 ----
cc = newSocket.getCertificateChain();
if (cc == null) {
! log.trace("No certificate chain when there should be one.");
throw new BEEPException("No certificate chain when " +
"there should be one. ");
***************
*** 608,617 ****
String subject = cert.getSubjectName().getNameString();
String issuer = cert.getIssuerName().getNameString();
! Log.logEntry(Log.SEV_DEBUG_VERBOSE,
! "Name = " + subject + " issued by " + issuer);
}
} else {
! Log.logEntry(Log.SEV_DEBUG_VERBOSE,
! "No peer authentication needed");
}
--- 609,618 ----
String subject = cert.getSubjectName().getNameString();
String issuer = cert.getIssuerName().getNameString();
! if (log.isTraceEnabled()) {
! log.trace("Name = " + subject + " issued by " + issuer);
! }
}
} else {
! log.trace("No peer authentication needed");
}
|
|
From: Huston F. <hu...@us...> - 2002-10-05 15:33:51
|
Update of /cvsroot/beepcore-java/beepcore-java/example/org/beepcore/beep/util In directory usw-pr-cvs1:/tmp/cvs-serv8567/example/org/beepcore/beep/util Removed Files: Log4JLog.java BeepLogger.java Log Message: changed to use commons-logging --- Log4JLog.java DELETED --- --- BeepLogger.java DELETED --- |
|
From: Huston F. <hu...@us...> - 2002-10-05 15:33:25
|
Update of /cvsroot/beepcore-java/beepcore-java/example/org/beepcore/beep/example
In directory usw-pr-cvs1:/tmp/cvs-serv8393/example/org/beepcore/beep/example
Modified Files:
Beepd.java Bing.java
Log Message:
changed to use commons-logging
Index: Beepd.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/example/org/beepcore/beep/example/Beepd.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** Beepd.java 8 Nov 2001 05:51:33 -0000 1.7
--- Beepd.java 5 Oct 2002 15:33:22 -0000 1.8
***************
*** 34,37 ****
--- 34,40 ----
import org.xml.sax.SAXException;
+ import org.apache.commons.logging.Log;
+ import org.apache.commons.logging.LogFactory;
+
import org.beepcore.beep.core.ProfileRegistry;
import org.beepcore.beep.core.SessionTuningProperties;
***************
*** 39,44 ****
import org.beepcore.beep.profile.ProfileConfiguration;
import org.beepcore.beep.transport.tcp.TCPSessionCreator;
- import org.beepcore.beep.util.ConsoleLog;
- import org.beepcore.beep.util.Log;
/**
--- 42,45 ----
***************
*** 58,61 ****
--- 59,65 ----
ProfileRegistry reg;
+ private Log log = LogFactory.getLog(this.getClass());
+
+
/**
* Parses the beepd element in the configuration file and loads the
***************
*** 199,205 ****
}
- ConsoleLog log = new ConsoleLog();
- Log.setLogService(log);
-
// Start the servers listening
Iterator i = servers.iterator();
--- 203,206 ----
***************
*** 218,223 ****
}
} catch (Exception e) {
! Log.logEntry(Log.SEV_ERROR, e);
! Log.logEntry(Log.SEV_ERROR, "Listener exiting");
}
}
--- 219,223 ----
}
} catch (Exception e) {
! log.error("Listener exiting", e);
}
}
Index: Bing.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/example/org/beepcore/beep/example/Bing.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -r1.10 -r1.11
*** Bing.java 25 Nov 2001 08:00:28 -0000 1.10
--- Bing.java 5 Oct 2002 15:33:22 -0000 1.11
***************
*** 33,38 ****
import org.beepcore.beep.transport.tcp.TCPSessionCreator;
import org.beepcore.beep.transport.tcp.TCPSession;
- import org.beepcore.beep.util.ConsoleLog;
- import org.beepcore.beep.util.Log;
/**
--- 33,36 ----
|
|
From: Huston F. <hu...@us...> - 2002-10-05 15:32:48
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/transport/tcp
In directory usw-pr-cvs1:/tmp/cvs-serv8130/src/org/beepcore/beep/transport/tcp
Modified Files:
TCPSession.java
Log Message:
changed to use commons-logging
Index: TCPSession.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/transport/tcp/TCPSession.java,v
retrieving revision 1.25
retrieving revision 1.26
diff -C2 -r1.25 -r1.26
*** TCPSession.java 7 Sep 2002 15:11:22 -0000 1.25
--- TCPSession.java 5 Oct 2002 15:32:45 -0000 1.26
***************
*** 30,33 ****
--- 30,36 ----
import java.util.StringTokenizer;
+ import org.apache.commons.logging.Log;
+ import org.apache.commons.logging.LogFactory;
+
import org.beepcore.beep.core.BEEPException;
import org.beepcore.beep.core.Channel;
***************
*** 40,44 ****
import org.beepcore.beep.util.BufferSegment;
import org.beepcore.beep.util.HeaderParser;
- import org.beepcore.beep.util.Log;
import org.beepcore.beep.util.StringUtil;
--- 43,46 ----
***************
*** 74,77 ****
--- 76,81 ----
// Instance Data
+ private Log log = LogFactory.getLog(this.getClass());
+
private byte headerBuffer[] = new byte[Frame.MAX_HEADER_SIZE];
private byte[] outputBuf = new byte[0];
***************
*** 128,133 ****
socket.setReceiveBufferSize(MAX_RECEIVE_BUFFER_SIZE);
} catch (Exception x) {
! Log.logEntry(Log.SEV_DEBUG,
! "Socket doesn't support setting receive buffer size");
}
}
--- 132,136 ----
socket.setReceiveBufferSize(MAX_RECEIVE_BUFFER_SIZE);
} catch (Exception x) {
! log.debug("Socket doesn't support setting receive buffer size");
}
}
***************
*** 292,299 ****
os.flush();
! if (Log.isLogged(Log.SEV_DEBUG_VERBOSE)) {
! Log.logEntry(Log.SEV_DEBUG_VERBOSE, TCP_MAPPING,
! "Wrote the following\n" +
! new String(outputBuf, 0, n));
}
}
--- 295,301 ----
os.flush();
! if (log.isTraceEnabled()) {
! log.trace("Wrote the following\n" +
! new String(outputBuf, 0, n));
}
}
***************
*** 312,318 ****
throws BEEPException
{
! Log.logEntry(Log.SEV_DEBUG, TCP_MAPPING,
! "Reset as "
! + (isInitiator() ? "INITIATOR" : "LISTENER"));
Socket s = null;
--- 314,321 ----
throws BEEPException
{
! if (log.isTraceEnabled()) {
! log.trace("Reset as "
! + (isInitiator() ? "INITIATOR" : "LISTENER"));
! }
Socket s = null;
***************
*** 363,373 ****
throws BEEPException
{
! if (Log.isLogged(Log.SEV_DEBUG)) {
! Log.logEntry(Log.SEV_DEBUG, TCP_MAPPING,
! "update SEQ channel=" + channel.getNumber()
! + " prevSeq=" + previouslySeq + " curSeq="
! + currentSeq + " prevUsed=" + previouslyUsed
! + " curUsed=" + currentlyUsed + " bufSize="
! + bufferSize);
}
--- 366,375 ----
throws BEEPException
{
! if (log.isDebugEnabled()) {
! log.debug("update SEQ channel=" + channel.getNumber()
! + " prevSeq=" + previouslySeq + " curSeq="
! + currentSeq + " prevUsed=" + previouslyUsed
! + " curUsed=" + currentlyUsed + " bufSize="
! + bufferSize);
}
***************
*** 397,403 ****
try {
! if (Log.isLogged(Log.SEV_DEBUG)) {
! Log.logEntry(Log.SEV_DEBUG, TCP_MAPPING,
! "Wrote: " + sb.toString());
}
--- 399,404 ----
try {
! if (log.isDebugEnabled()) {
! log.debug("Wrote: " + sb.toString());
}
***************
*** 423,429 ****
while (running) {
! if (Log.isLogged(Log.SEV_DEBUG_VERBOSE)) {
! Log.logEntry(Log.SEV_DEBUG_VERBOSE, TCP_MAPPING,
! "Processing next frame");
}
--- 424,429 ----
while (running) {
! if (log.isTraceEnabled()) {
! log.trace("Processing next frame");
}
***************
*** 458,462 ****
}
} catch (IOException e) {
! Log.logEntry(Log.SEV_ERROR, TCP_MAPPING, e);
socket = null;
--- 458,462 ----
}
} catch (IOException e) {
! log.error(e);
socket = null;
***************
*** 466,476 ****
terminate("Session aborted by remote peer.");
} catch (Throwable e) {
! Log.logEntry(Log.SEV_ERROR, TCP_MAPPING, e);
terminate(e.getMessage());
}
! Log.logEntry(Log.SEV_DEBUG, TCP_MAPPING,
! "Session listener thread exiting. State = "
! + TCPSession.this.getState());
}
--- 466,477 ----
terminate("Session aborted by remote peer.");
} catch (Throwable e) {
! log.error(e);
terminate(e.getMessage());
}
! if (log.isDebugEnabled()) {
! log.debug("Session listener thread exiting. State = "
! + TCPSession.this.getState());
! }
}
***************
*** 540,546 ****
}
! if (Log.isLogged(Log.SEV_DEBUG_VERBOSE)) {
! Log.logEntry(Log.SEV_DEBUG_VERBOSE, TCP_MAPPING,
! new String(headerBuffer, 0, headerLength));
}
--- 541,546 ----
}
! if (log.isTraceEnabled()) {
! log.trace(new String(headerBuffer, 0, headerLength));
}
***************
*** 584,590 ****
}
! if (Log.isLogged(Log.SEV_DEBUG_VERBOSE)) {
! Log.logEntry(Log.SEV_DEBUG_VERBOSE, TCP_MAPPING,
! new String(payload));
}
--- 584,589 ----
}
! if (log.isTraceEnabled()) {
! log.trace(new String(payload));
}
|
|
From: Huston F. <hu...@us...> - 2002-10-05 15:32:26
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl
In directory usw-pr-cvs1:/tmp/cvs-serv7994/src/org/beepcore/beep/profile/sasl
Modified Files:
Blob.java SASLSessionTable.java
Log Message:
changed to use commons-logging
Index: Blob.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/Blob.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** Blob.java 4 May 2002 22:42:41 -0000 1.6
--- Blob.java 5 Oct 2002 15:32:22 -0000 1.7
***************
*** 19,30 ****
import java.io.IOException;
import java.util.Hashtable;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.xml.sax.SAXException;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
! import org.beepcore.beep.util.Log;
/**
--- 19,37 ----
import java.io.IOException;
+
import java.util.Hashtable;
+
import javax.xml.parsers.*;
+
import org.w3c.dom.*;
+
import org.xml.sax.SAXException;
+
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
! import org.apache.commons.logging.Log;
! import org.apache.commons.logging.LogFactory;
!
/**
***************
*** 75,78 ****
--- 82,87 ----
// Data
+ private Log log = LogFactory.getLog(this.getClass());
+
private int status;
private String blobData;
***************
*** 93,97 ****
throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, "Created blob=>"+status);
if (!initialized) {
init();
--- 102,108 ----
throws SASLException
{
! if (log.isDebugEnabled()) {
! log.debug("Created blob=>"+status);
! }
if (!initialized) {
init();
***************
*** 130,134 ****
stringified = buff.toString();
! Log.logEntry(Log.SEV_DEBUG, "Created blob=>" + stringified);
}
--- 141,147 ----
stringified = buff.toString();
! if (log.isDebugEnabled()) {
! log.debug("Created blob=>" + stringified);
! }
}
***************
*** 145,149 ****
throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, "Created blob=>" + status + "," + data);
if (!initialized) {
init();
--- 158,164 ----
throws SASLException
{
! if (log.isDebugEnabled()) {
! log.debug("Created blob=>" + status + "," + data);
! }
if (!initialized) {
init();
***************
*** 192,196 ****
stringified = buff.toString();
! Log.logEntry(Log.SEV_DEBUG, "Created blob=>" + stringified);
}
--- 207,213 ----
stringified = buff.toString();
! if (log.isDebugEnabled()) {
! log.debug("Created blob=>" + stringified);
! }
}
***************
*** 247,251 ****
stringified = buff.toString();
! Log.logEntry(Log.SEV_DEBUG, "Created blob=>" + stringified);
}
--- 264,270 ----
stringified = buff.toString();
! if (log.isDebugEnabled()) {
! log.debug("Created blob=>" + stringified);
! }
}
***************
*** 260,264 ****
public Blob(String blob) throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, "Receiving blob of=>"+blob);
if (!initialized) {
init();
--- 279,285 ----
public Blob(String blob) throws SASLException
{
! if (log.isDebugEnabled()) {
! log.debug("Receiving blob of=>"+blob);
! }
if (!initialized) {
init();
***************
*** 301,306 ****
throw new SASLException("No valid data in blob");
}
!
! Log.logEntry(Log.SEV_DEBUG, "Received Blob of =>" + stringified);
}
--- 322,329 ----
throw new SASLException("No valid data in blob");
}
!
! if (log.isDebugEnabled()) {
! log.debug("Received Blob of =>" + stringified);
! }
}
***************
*** 392,402 ****
try {
! Log.logEntry(Log.SEV_DEBUG, "Tuning Profile Parse Routine");
doc = builder.parse(new java.io.ByteArrayInputStream(blob.getBytes()));
! Log.logEntry(Log.SEV_DEBUG, "parsed message");
} catch (Exception e) {
! Log.logEntry(Log.SEV_DEBUG, e);
throw new SASLException(ERR_XML_PARSE_FAILURE);
}
--- 415,425 ----
try {
! log.debug("Tuning Profile Parse Routine");
doc = builder.parse(new java.io.ByteArrayInputStream(blob.getBytes()));
! log.debug("parsed message");
} catch (Exception e) {
! log.debug("Error parsing", e);
throw new SASLException(ERR_XML_PARSE_FAILURE);
}
Index: SASLSessionTable.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/SASLSessionTable.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -r1.5 -r1.6
*** SASLSessionTable.java 22 Nov 2001 15:25:29 -0000 1.5
--- SASLSessionTable.java 5 Oct 2002 15:32:22 -0000 1.6
***************
*** 20,23 ****
--- 20,26 ----
import java.util.Hashtable;
+ import org.apache.commons.logging.Log;
+ import org.apache.commons.logging.LogFactory;
+
import org.beepcore.beep.core.Session;
import org.beepcore.beep.core.SessionCredential;
***************
*** 25,29 ****
import org.beepcore.beep.core.event.SessionListener;
import org.beepcore.beep.profile.sasl.anonymous.SASLAnonymousProfile;
- import org.beepcore.beep.util.Log;
/**
--- 28,31 ----
***************
*** 41,45 ****
public class SASLSessionTable implements SessionListener
{
- private Hashtable nameToSession, sessionToName;
private final static int DEFAULT_SIZE = 4;
--- 43,46 ----
***************
*** 51,54 ****
--- 52,58 ----
private static final String MSG_SESSIONS_TABLE_TRAILER="===] End of Table";
+ private Log log = LogFactory.getLog(this.getClass());
+ private Hashtable nameToSession, sessionToName;
+
SASLSessionTable()
{
***************
*** 175,179 ****
catch(SASLException x)
{
! Log.logEntry(Log.SEV_ERROR, x);
}
}
--- 179,183 ----
catch(SASLException x)
{
! log.error("Error removing entry", x);
}
}
***************
*** 185,192 ****
void printContents()
{
! Log.logEntry(Log.SEV_DEBUG, MSG_SESSIONS_TABLE_HEADER);
if(sessionToName.size()==0)
{
! Log.logEntry(Log.SEV_DEBUG, MSG_EMPTY);
}
else
--- 189,196 ----
void printContents()
{
! log.debug(MSG_SESSIONS_TABLE_HEADER);
if(sessionToName.size()==0)
{
! log.debug(MSG_EMPTY);
}
else
***************
*** 202,210 ****
else
mech = "UNKNOWN";
! Log.logEntry(Log.SEV_DEBUG, MSG_USER_PREFIX + user +
! MSG_MECHANISM_PREFIX + mech );
}
}
! Log.logEntry(Log.SEV_DEBUG,MSG_SESSIONS_TABLE_TRAILER);
}
}
--- 206,217 ----
else
mech = "UNKNOWN";
!
! if (log.isDebugEnabled()) {
! log.debug(MSG_USER_PREFIX + user +
! MSG_MECHANISM_PREFIX + mech );
! }
}
}
! log.debug(MSG_SESSIONS_TABLE_TRAILER);
}
}
|
|
From: Huston F. <hu...@us...> - 2002-10-05 15:32:09
|
Update of /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp
In directory usw-pr-cvs1:/tmp/cvs-serv7819/src/org/beepcore/beep/profile/sasl/otp
Modified Files:
SASLOTPProfile.java OTPDictionary.java OTPGenerator.java
OTPAuthenticator.java
Log Message:
changed to use commons-logging
Index: SASLOTPProfile.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/SASLOTPProfile.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -r1.8 -r1.9
*** SASLOTPProfile.java 22 Aug 2002 17:51:31 -0000 1.8
--- SASLOTPProfile.java 5 Oct 2002 15:32:06 -0000 1.9
***************
*** 25,28 ****
--- 25,31 ----
import sun.misc.BASE64Encoder;
+ import org.apache.commons.logging.Log;
+ import org.apache.commons.logging.LogFactory;
+
import org.beepcore.beep.core.*;
import org.beepcore.beep.profile.*;
***************
*** 33,37 ****
import org.beepcore.beep.profile.sasl.otp.database.*;
import org.beepcore.beep.transport.tcp.*;
- import org.beepcore.beep.util.*;
--- 36,39 ----
***************
*** 73,76 ****
--- 75,80 ----
// Instance Data
+ private Log log = LogFactory.getLog(this.getClass());
+
private Hashtable authenticators;
private MD5 md5;
***************
*** 138,142 ****
String authorize, authenticate, challenge = null;
! Log.logEntry(Log.SEV_DEBUG, SASL_OTP, "SASL-OTP Start Channel CCL");
OTPAuthenticator temp = new OTPAuthenticator(this);
--- 142,146 ----
String authorize, authenticate, challenge = null;
! log.debug("SASL-OTP Start Channel CCL");
OTPAuthenticator temp = new OTPAuthenticator(this);
***************
*** 154,159 ****
try {
blob = temp.receiveIDs(data);
! Log.logEntry(Log.SEV_DEBUG, SASL_OTP,
! "Challenge is=>" + challenge);
} catch (SASLException szf) {
temp.abortNoThrow(szf.getMessage());
--- 158,164 ----
try {
blob = temp.receiveIDs(data);
! if (log.isDebugEnabled()) {
! log.debug("Challenge is=>" + challenge);
! }
} catch (SASLException szf) {
temp.abortNoThrow(szf.getMessage());
***************
*** 163,168 ****
return;
}
! Log.logEntry(Log.SEV_DEBUG, SASL_OTP,
! "Blobbed64 Challenge is=>" + data);
}
channel.setMessageListener(temp);
--- 168,174 ----
return;
}
! if (log.isDebugEnabled()) {
! log.debug("Blobbed64 Challenge is=>" + data);
! }
}
channel.setMessageListener(temp);
***************
*** 180,184 ****
}
! Log.logEntry(Log.SEV_DEBUG, "Started an SASL-OTP Channel");
} catch (Exception x) {
channel.getSession().terminate(x.getMessage());
--- 186,190 ----
}
! log.debug("Started an SASL-OTP Channel");
} catch (Exception x) {
channel.getSession().terminate(x.getMessage());
***************
*** 306,314 ****
boolean success = false;
! if (authenticateId == null ||
! session == null ||
! pwd == null ) {
! Log.logEntry(Log.SEV_ERROR, SASL_OTP,
! ERR_INVALID_ID + authenticateId);
throw new InvalidParameterException(ERR_INVALID_ID
--- 312,316 ----
boolean success = false;
! if (authenticateId == null || session == null || pwd == null ) {
throw new InvalidParameterException(ERR_INVALID_ID
***************
*** 370,376 ****
} else {
success = true;
- Log.logEntry(Log.SEV_DEBUG, SASL_OTP,
- "Wow, cool!!! " + session
- + " is valid for\n" + cred.toString());
}
}
--- 372,375 ----
***************
*** 408,414 ****
if (authenticateId == null) {
- Log.logEntry(Log.SEV_ERROR, SASL_OTP,
- ERR_INVALID_ID + authenticateId);
-
throw new InvalidParameterException(ERR_INVALID_ID
+ authenticateId);
--- 407,410 ----
***************
*** 469,475 ****
} else {
success = true;
- Log.logEntry(Log.SEV_DEBUG, SASL_OTP,
- "Wow, cool!!! " + session
- + " is valid for\n" + cred.toString());
}
}
--- 465,468 ----
***************
*** 584,590 ****
} else {
success = true;
- Log.logEntry(Log.SEV_DEBUG, SASL_OTP,
- "Wow, cool!!! " + session
- + " is valid for\n" + cred.toString());
}
}
--- 577,580 ----
***************
*** 594,602 ****
return session;
- }
-
- static void printHex(byte buff[])
- {
- Log.logEntry(Log.SEV_DEBUG, SASL_OTP, convertBytesToHex(buff));
}
--- 584,587 ----
Index: OTPDictionary.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/OTPDictionary.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** OTPDictionary.java 8 Nov 2001 05:51:34 -0000 1.2
--- OTPDictionary.java 5 Oct 2002 15:32:06 -0000 1.3
***************
*** 22,29 ****
import java.util.StringTokenizer;
import org.beepcore.beep.profile.sasl.SASLException;
import org.beepcore.beep.profile.sasl.InvalidParameterException;
- import org.beepcore.beep.util.ConsoleLog;
- import org.beepcore.beep.util.Log;
--- 22,30 ----
import java.util.StringTokenizer;
+ import org.apache.commons.logging.Log;
+ import org.apache.commons.logging.LogFactory;
+
import org.beepcore.beep.profile.sasl.SASLException;
import org.beepcore.beep.profile.sasl.InvalidParameterException;
***************
*** 449,452 ****
--- 450,455 ----
"YELL", "YOGA", "YOKE" };
+ private static Log slog = LogFactory.getLog(OTPDictionary.class);
+
static public String find(int index) throws InvalidParameterException
{
***************
*** 491,495 ****
if (i == null) {
! Log.logEntry(Log.SEV_ERROR, "OTPDictionary", ERR_INVALID_HASH);
throw new InvalidParameterException("Invalid OTP word=>" + s);
--- 494,498 ----
if (i == null) {
! slog.error(ERR_INVALID_HASH);
throw new InvalidParameterException("Invalid OTP word=>" + s);
***************
*** 521,526 ****
if (st.countTokens() != 6) {
! Log.logEntry(Log.SEV_ERROR, "OTPDictionary",
! "Failed to hash=>" + words);
throw new InvalidParameterException(ERR_INVALID_HASH);
--- 524,528 ----
if (st.countTokens() != 6) {
! slog.error("Failed to hash=>" + words);
throw new InvalidParameterException(ERR_INVALID_HASH);
***************
*** 587,591 ****
}
! Log.logEntry(Log.SEV_CRITICAL, "OTPDictionary", ERR_INVALID_HASH);
throw new RuntimeException(ERR_INVALID_HASH);
--- 589,593 ----
}
! slog.error(ERR_INVALID_HASH);
throw new RuntimeException(ERR_INVALID_HASH);
Index: OTPGenerator.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/OTPGenerator.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** OTPGenerator.java 8 Nov 2001 05:51:34 -0000 1.4
--- OTPGenerator.java 5 Oct 2002 15:32:06 -0000 1.5
***************
*** 254,257 ****
--- 254,262 ----
}
+ static void printHex(byte buff[])
+ {
+ System.out.println(SASLOTPProfile.convertBytesToHex(buff));
+ }
+
/**
* Method main is the method used to run the OTP generator.
***************
*** 296,300 ****
}
! SASLOTPProfile.printHex(hash);
passphrase = SASLOTPProfile.convertBytesToHex(hash);
--- 301,305 ----
}
! printHex(hash);
passphrase = SASLOTPProfile.convertBytesToHex(hash);
Index: OTPAuthenticator.java
===================================================================
RCS file: /cvsroot/beepcore-java/beepcore-java/src/org/beepcore/beep/profile/sasl/otp/OTPAuthenticator.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -r1.11 -r1.12
*** OTPAuthenticator.java 10 Nov 2001 21:33:29 -0000 1.11
--- OTPAuthenticator.java 5 Oct 2002 15:32:06 -0000 1.12
***************
*** 25,30 ****
import java.util.StringTokenizer;
import org.beepcore.beep.core.*;
- import org.beepcore.beep.util.*;
import org.beepcore.beep.profile.sasl.*;
import org.beepcore.beep.profile.sasl.otp.algorithm.*;
--- 25,32 ----
import java.util.StringTokenizer;
+ import org.apache.commons.logging.Log;
+ import org.apache.commons.logging.LogFactory;
+
import org.beepcore.beep.core.*;
import org.beepcore.beep.profile.sasl.*;
import org.beepcore.beep.profile.sasl.otp.algorithm.*;
***************
*** 97,100 ****
--- 99,104 ----
// Data
+ private Log log = LogFactory.getLog(this.getClass());
+
private int state;
private Algorithm algorithm;
***************
*** 113,118 ****
OTPAuthenticator(SASLOTPProfile otpProfile)
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Creating Listener OTP Authenticator");
authenticated = null;
--- 117,121 ----
OTPAuthenticator(SASLOTPProfile otpProfile)
{
! log.debug("Creating Listener OTP Authenticator");
authenticated = null;
***************
*** 134,139 ****
throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Starting OTP Authenticator");
if (state != STATE_UNKNOWN) {
--- 137,141 ----
throws SASLException
{
! log.debug("Starting OTP Authenticator");
if (state != STATE_UNKNOWN) {
***************
*** 153,158 ****
throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator Receiving IDs");
// If we're listening, the last state we should
--- 155,159 ----
throws SASLException
{
! log.debug("OTP Authenticator Receiving IDs");
// If we're listening, the last state we should
***************
*** 162,166 ****
}
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH, "Data is" + data);
int i = data.charAt(0); // data.indexOf(SPACE_CHAR);
--- 163,169 ----
}
! if (log.isDebugEnabled()) {
! log.debug("Data is" + data);
! }
int i = data.charAt(0); // data.indexOf(SPACE_CHAR);
***************
*** 194,199 ****
}
! Log.logEntry(Log.SEV_DEBUG,
! "Fetching DB for " + authenticated);
try
--- 197,203 ----
}
! if (log.isDebugEnabled()) {
! log.debug("Fetching DB for " + authenticated);
! }
try
***************
*** 243,248 ****
challenge.append(SPACE);
challenge.append(EXT);
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Generated Challenge=>" + challenge.toString());
try
--- 247,253 ----
challenge.append(SPACE);
challenge.append(EXT);
! if (log.isDebugEnabled()) {
! log.debug("Generated Challenge=>" + challenge.toString());
! }
try
***************
*** 271,277 ****
boolean doInit = false;
byte responseHash[] = null;
!
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator validating response");
// If we're listening, the last state we should
--- 276,281 ----
boolean doInit = false;
byte responseHash[] = null;
!
! log.debug("OTP Authenticator validating response");
// If we're listening, the last state we should
***************
*** 298,309 ****
response = response.substring(WORD.length());
long l = OTPDictionary.convertWordsToHash(response);
! responseHash = profile.convertLongToBytes(l);
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Hacked response=>" + response);
} else if (response.indexOf(HEX) != -1) {
response = response.substring(HEX.length());
responseHash = profile.convertHexToBytes(response);
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Hacked response=>" + response);
} else {
abort(ERR_UNEXPECTED_MESSAGE);
--- 302,315 ----
response = response.substring(WORD.length());
long l = OTPDictionary.convertWordsToHash(response);
! responseHash = profile.convertLongToBytes(l);
! if (log.isDebugEnabled()) {
! log.debug("Hacked response=>" + response);
! }
} else if (response.indexOf(HEX) != -1) {
response = response.substring(HEX.length());
responseHash = profile.convertHexToBytes(response);
! if (log.isDebugEnabled()) {
! log.debug("Hacked response=>" + response);
! }
} else {
abort(ERR_UNEXPECTED_MESSAGE);
***************
*** 330,335 ****
byte nextHash[] = database.getLastHash();
byte responseHash[] = algorithm.generateHash(hash);
! Log.logEntry(Log.SEV_DEBUG_VERBOSE,"Test====>"+profile.convertBytesToHex(responseHash));
! Log.logEntry(Log.SEV_DEBUG_VERBOSE,"Control=>"+profile.convertBytesToHex(nextHash));
boolean match = true;
for(int i = 0; i < 8; i++)
--- 336,343 ----
byte nextHash[] = database.getLastHash();
byte responseHash[] = algorithm.generateHash(hash);
! if (log.isTraceEnabled()) {
! log.trace("Test====>"+profile.convertBytesToHex(responseHash));
! log.trace("Control=>"+profile.convertBytesToHex(nextHash));
! }
boolean match = true;
for(int i = 0; i < 8; i++)
***************
*** 351,355 ****
throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, "Validating init-* response");
// Extract the various elements of the request
String oldHashData;
--- 359,363 ----
throws SASLException
{
! log.debug("Validating init-* response");
// Extract the various elements of the request
String oldHashData;
***************
*** 368,395 ****
newParms = st.nextToken();
newHashData = st.nextToken();
! Log.logEntry(Log.SEV_DEBUG,"Command=>"+command);
! Log.logEntry(Log.SEV_DEBUG,"OldHashData=>"+oldHashData);
! Log.logEntry(Log.SEV_DEBUG,"newParms=>"+newParms);
! Log.logEntry(Log.SEV_DEBUG,"newHashData=>"+newHashData);
// Validate login
Algorithm a = profile.getAlgorithm(database.getAlgorithmName());
! if(profile.HEX_INIT.startsWith(command))//command.indexOf(profile.HEX_INIT) != -1)
! {
! Log.logEntry(Log.SEV_DEBUG,"CMD is "+profile.HEX_INIT);
oldHash = profile.convertHexToBytes(oldHashData);
! }
! else if(profile.WORD_INIT.startsWith(command))//command.indexOf(profile.WORD_INIT) != -1)
! {
! Log.logEntry(Log.SEV_DEBUG,"CMD is "+profile.WORD_INIT);
// @todo obviate the 2nd step when you get a chance
long l = OTPDictionary.convertWordsToHash(oldHashData);
oldHash = profile.convertLongToBytes(l);
! }
! else
! {
abort(ERR_UNKNOWN_COMMAND+command);
}
! Log.logEntry(Log.SEV_DEBUG,"Retrieved from init-* oldHash=>"+profile.convertBytesToHex(oldHash));
// Compare the hash and fail if it doesn't match
--- 376,404 ----
newParms = st.nextToken();
newHashData = st.nextToken();
! if (log.isDebugEnabled()) {
! log.debug("Command=>"+command);
! log.debug("OldHashData=>"+oldHashData);
! log.debug("newParms=>"+newParms);
! log.debug("newHashData=>"+newHashData);
! }
// Validate login
Algorithm a = profile.getAlgorithm(database.getAlgorithmName());
! if(profile.HEX_INIT.startsWith(command)) {
! log.debug("CMD is "+profile.HEX_INIT);
oldHash = profile.convertHexToBytes(oldHashData);
! } else if(profile.WORD_INIT.startsWith(command)) {
! log.debug("CMD is "+profile.WORD_INIT);
// @todo obviate the 2nd step when you get a chance
long l = OTPDictionary.convertWordsToHash(oldHashData);
oldHash = profile.convertLongToBytes(l);
! } else {
abort(ERR_UNKNOWN_COMMAND+command);
}
!
! if (log.isDebugEnabled()) {
! log.debug("Retrieved from init-* oldHash=>" +
! profile.convertBytesToHex(oldHash));
! }
// Compare the hash and fail if it doesn't match
***************
*** 405,413 ****
st = new StringTokenizer(newParms);
// Now do even weirder update of the db.
! Log.logEntry(Log.SEV_DEBUG,"Auth=>"+authenticated);
! Log.logEntry(Log.SEV_DEBUG,"Hash=>"+newHashData);
profile.getUserDatabase().addUser(authenticated, algorithm,
newHashData, seed, sequence);
! Log.logEntry(Log.SEV_DEBUG, "Successful Authentication!");
return cred;
}
--- 414,424 ----
st = new StringTokenizer(newParms);
// Now do even weirder update of the db.
! if (log.isDebugEnabled()) {
! log.debug("Auth=>"+authenticated);
! log.debug("Hash=>"+newHashData);
! }
profile.getUserDatabase().addUser(authenticated, algorithm,
newHashData, seed, sequence);
! log.debug("Successful Authentication!");
return cred;
}
***************
*** 434,439 ****
String authorizedId, String authenticateId)
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator Initiator Construtor");
authenticated = authenticateId;
--- 445,449 ----
String authorizedId, String authenticateId)
{
! log.debug("OTP Authenticator Initiator Construtor");
authenticated = authenticateId;
***************
*** 442,450 ****
database = db;
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Dict.getA()" + database.getAlgorithmName());
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Dict.getA()"
! + profile.getAlgorithm(database.getAlgorithmName()));
algorithm = profile.getAlgorithm(database.getAlgorithmName());
--- 452,460 ----
database = db;
! if (log.isDebugEnabled()) {
! log.debug("Dict.getA()" + database.getAlgorithmName());
! log.debug("Dict.getA()"
! + profile.getAlgorithm(database.getAlgorithmName()));
! }
algorithm = profile.getAlgorithm(database.getAlgorithmName());
***************
*** 493,498 ****
throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator sending Identities");
// Grok and validate the parameters
--- 503,507 ----
throws SASLException
{
! log.debug("OTP Authenticator sending Identities");
// Grok and validate the parameters
***************
*** 512,520 ****
temp.append(authenticateId);
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "AuthOTP Using=>" + temp.toString() + "<=");
Blob blob = new Blob(Blob.STATUS_NONE, temp.toString());
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "AuthOTP Using=>" + blob.toString() + "<=");
try {
channel.sendMSG(new StringOutputDataStream(blob.toString()),
--- 521,531 ----
temp.append(authenticateId);
! if (log.isDebugEnabled()) {
! log.debug("AuthOTP Using=>" + temp.toString() + "<=");
! }
Blob blob = new Blob(Blob.STATUS_NONE, temp.toString());
! if (log.isDebugEnabled()) {
! log.debug("AuthOTP Using=>" + blob.toString() + "<=");
! }
try {
channel.sendMSG(new StringOutputDataStream(blob.toString()),
***************
*** 532,537 ****
throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator received Challenge");
// If we're initiating, the last state we should
--- 543,547 ----
throws SASLException
{
! log.debug("OTP Authenticator received Challenge");
// If we're initiating, the last state we should
***************
*** 553,558 ****
String seed = null, algo = null;
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Tokenizing=>" + challenge);
StringTokenizer st = new StringTokenizer(challenge);
--- 563,569 ----
String seed = null, algo = null;
! if (log.isDebugEnabled()) {
! log.debug("Tokenizing=>" + challenge);
! }
StringTokenizer st = new StringTokenizer(challenge);
***************
*** 575,581 ****
abort("Invalid Seed");
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Algo is=>" + algo + " seed is=>" + seed + " seq=>"
! + sequence);
String phrase = new String(seed + password);
--- 586,593 ----
abort("Invalid Seed");
! if (log.isDebugEnabled()) {
! log.debug("Algo is=>" + algo + " seed is=>" + seed + " seq=>"
! + sequence);
! }
String phrase = new String(seed + password);
***************
*** 590,599 ****
}
! profile.printHex(temp);
long l = profile.convertBytesToLong(temp);
phrase = new String(WORD + OTPDictionary.convertHashToWords(l));
!
! Log.logEntry(Log.SEV_DEBUG,
! "Prelim response is =>" + phrase + "<=");
// IF this is an init request
--- 602,614 ----
}
! if (log.isDebugEnabled()) {
! log.debug(SASLOTPProfile.convertBytesToHex(temp));
! }
long l = profile.convertBytesToLong(temp);
phrase = new String(WORD + OTPDictionary.convertHashToWords(l));
!
! if (log.isDebugEnabled()) {
! log.debug("Prelim response is =>" + phrase + "<=");
! }
// IF this is an init request
***************
*** 605,609 ****
sb.append(initData);
phrase = sb.toString();
! Log.logEntry(Log.SEV_DEBUG,"Produced INIT response of "+phrase);
}
try
--- 620,626 ----
sb.append(initData);
phrase = sb.toString();
! if (log.isDebugEnabled()) {
! log.debug("Produced INIT response of "+phrase);
! }
}
try
***************
*** 626,631 ****
throws SASLException
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator Completing!");
// If we're initiating, the last state we should
--- 643,647 ----
throws SASLException
{
! log.debug("OTP Authenticator Completing!");
// If we're initiating, the last state we should
***************
*** 643,648 ****
throws SASLException
{
! Log.logEntry(Log.SEV_ERROR, OTP_AUTH,
! "Aborting OTP Authenticator because " + message);
state = STATE_ABORT;
throw new SASLException(message);
--- 659,663 ----
throws SASLException
{
! log.error("Aborting OTP Authenticator because " + message);
state = STATE_ABORT;
throw new SASLException(message);
***************
*** 657,662 ****
void abortNoThrow(String message)
{
! Log.logEntry(Log.SEV_ERROR, OTP_AUTH,
! "Aborting OTP Authenticator because " + message);
state = STATE_ABORT;
}
--- 672,676 ----
void abortNoThrow(String message)
{
! log.error("Aborting OTP Authenticator because " + message);
state = STATE_ABORT;
}
***************
*** 680,685 ****
try
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator.receiveMSG");
String data = null;
--- 694,698 ----
try
{
! log.debug("OTP Authenticator.receiveMSG");
String data = null;
***************
*** 705,710 ****
}
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "MSG DATA=>" + data);
String status = blob.getStatus();
--- 718,724 ----
}
! if (log.isDebugEnabled()) {
! log.debug("MSG DATA=>" + data);
! }
String status = blob.getStatus();
***************
*** 733,739 ****
state = STATE_COMPLETE;
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "Wow, cool!!! " + channel.getSession()
! + " is valid for\n" + cred.toString());
try
{
--- 747,754 ----
state = STATE_COMPLETE;
! if (log.isDebugEnabled()) {
! log.debug("" + channel.getSession()
! + " is valid for\n" + cred.toString());
! }
try
{
***************
*** 784,789 ****
public void receiveRPY(Message message)
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator.receiveRPY");
Blob blob = null;
--- 799,803 ----
public void receiveRPY(Message message)
{
! log.debug("OTP Authenticator.receiveRPY");
Blob blob = null;
***************
*** 814,821 ****
if ((status != null)
! && status.equals(SASLProfile.SASL_STATUS_ABORT)) {
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTPAuthenticator receiveRPY got an RPY=>"
! + blob.getData());
sendAbort = false;
abort(ERR_PEER_ABORTED + blob.getData());
--- 828,835 ----
if ((status != null)
! && status.equals(SASLProfile.SASL_STATUS_ABORT))
! {
! log.debug("OTPAuthenticator receiveRPY got an RPY=>"
! + blob.getData());
sendAbort = false;
abort(ERR_PEER_ABORTED + blob.getData());
***************
*** 850,854 ****
catch(Exception x)
{
! Log.logEntry(Log.SEV_ERROR, x);
synchronized (this) {
this.notify();
--- 864,868 ----
catch(Exception x)
{
! log.error(x);
synchronized (this) {
this.notify();
***************
*** 888,893 ****
public void receiveERR(Message message)
{
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "OTP Authenticator.receiveERR");
try {
--- 902,906 ----
public void receiveERR(Message message)
{
! log.debug("OTP Authenticator.receiveERR");
try {
***************
*** 898,903 ****
is.read(buff);
Blob b = new Blob(new String(buff));
! Log.logEntry(Log.SEV_DEBUG, OTP_AUTH,
! "ERR received=>\n" + b.getData());
abort(new String(buff));
--- 911,917 ----
is.read(buff);
Blob b = new Blob(new String(buff));
! if (log.isDebugEnabled()) {
! log.debug("ERR received=>\n" + b.getData());
! }
abort(new String(buff));
|