72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
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
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
|
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
}
- (XMPPConnection*)connection
{
return connection;
}
@end
@implementation XMPPStreamErrorException
+ newWithClass: (Class)class_
connection: (XMPPConnection*)conn
condition: (OFString*)condition_
reason: (OFString*)reason_;
{
return [[self alloc] initWithClass: class_
connection: conn
condition: condition_
reason: reason_];
}
- initWithClass: (Class)class_
connection: (XMPPConnection*)conn
{
Class c = isa;
[self release];
@throw [OFNotImplementedException newWithClass: c
selector: _cmd];
}
- initWithClass: (Class)class_
connection: (XMPPConnection*)conn
condition: (OFString*)condition_
reason: (OFString*)reason_
{
self = [super initWithClass: class_
connection: conn];
@try {
condition = [condition_ copy];
reason = [reason_ copy];
} @catch (id e) {
[self release];
@throw e;
}
return self;
}
- (void)dealloc
{
[condition release];
[reason release];
[super dealloc];
}
- (OFString*)description
{
if (description != nil)
return description;
description = [[OFString alloc] initWithFormat:
@"Got stream error: %@. Reason: %@!", condition, reason];
return description;
}
- (OFString*)condition
{
return condition;
}
- (OFString*)reason
{
return reason;
}
@end
@implementation XMPPStringPrepFailedException
+ newWithClass: (Class)class_
connection: (XMPPConnection*)conn
profile: (OFString*)profile
string: (OFString*)string
{
|