litesoft
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
package InterModuleComm;
import org.litesoft.util.*;
public final class WelcomeMessage implements Message
{
protected static final String PREFIX =
Constants.PROTOCOL_PREFIX + ModuleMsgLifecycleForm.Welcome + Constants.NV_SEP;
private String mKnownAs;
private String mId;
protected WelcomeMessage( String pKnownAs, String pId )
{
mKnownAs = pKnownAs;
mId = pId;
}
@Override
public String toString()
{
return getHeader();
}
public String ToSendText()
{
return getHeader() + "\n";
}
public String getHeader()
{
return PREFIX + getKnownAs() + Constants.SPECIAL_ID_SEP + getId();
}
public String getKnownAs()
{
return mKnownAs;
}
public String getId()
{
return mId;
}
public static class Builder
{
private String mKnownAs;
private String mId;
public static Builder FromHeader( String pHeader )
{
if ( (pHeader != null) && pHeader.startsWith( PREFIX ) )
{
String zRest = Utils.trimLeadingSpaces( pHeader.substring( PREFIX.length() ) );
int zSepAt = zRest.indexOf( Constants.SPECIAL_ID_SEP );
if ( zSepAt != -1 )
{
String zKnownAs = zRest.substring( 0, zSepAt ).trim();
String zId = zRest.substring( zSepAt + 1 ).trim();
return FromParams( zKnownAs, zId );
}
}
return null;
}
private Builder( String pKnownAs, String pId )
{
mKnownAs = pKnownAs;
mId = pId;
}
private static Builder FromParams( String pKnownAs, String pId )
{
if ( Utils.isAsciiIdentifier( pKnownAs = Utils.noEmpty( pKnownAs ) ) &&
Utils.isNoSpaceAscii( pId = Utils.noEmpty( pId ) ) )
{
return new Builder( pKnownAs, pId );
}
return null;
}
public static Builder Acknowledge( HelloMessage pHelloMessage, String pKnownAs )
{
if ( (pHelloMessage != null) && Utils.isAsciiIdentifier( pKnownAs = Utils.noEmpty( pKnownAs ) ) )
{
return FromParams( pKnownAs, pHelloMessage.getId() );
}
return null;
}
public WelcomeMessage ToMsg()
{
return new WelcomeMessage( getKnownAs(), getId() );
}
public String getKnownAs()
{
return mKnownAs;
}
public String getId()
{
return mId;
}
}
}
|
Revision |
Author |
Commited |
Message |
2
|
GeorgeS
|
Sun 07 Feb, 2010 12:50:58 +0000 |
|