use of org.eclipse.ecf.bulletinboard.BBException in project ecf by eclipse.
the class AbstractBBContainer method connect.
public void connect(ID targetID, IConnectContext connectContext) throws ContainerConnectException {
this.targetID = targetID;
bb.postConnect();
IBBCredentials creds = getCredentialsFromConnectContext(connectContext);
if (creds != null) {
try {
bb.login(creds);
} catch (BBException e) {
throw new ContainerConnectException(e);
}
}
}
use of org.eclipse.ecf.bulletinboard.BBException in project ecf by eclipse.
the class AbstractBulletinBoard method getMember.
public IMember getMember(ID id) throws BBException {
if (cachedMembers.containsKey(id)) {
return cachedMembers.get(id);
} else {
final WebRequest request = createMemberPageRequest(id);
try {
request.execute();
final String str = request.getResponseBodyAsString();
request.releaseConnection();
final IMember member = parser.parseMemberPageForName(str, id);
if (member != null) {
((AbstractBBObject) member).setBulletinBoard(this);
cachedMembers.put(member.getID(), member);
return member;
}
} catch (final Exception e) {
e.printStackTrace();
}
return null;
}
}
use of org.eclipse.ecf.bulletinboard.BBException in project ecf by eclipse.
the class PHPBB method getTitle.
public String getTitle() throws BBException {
if (this.title == null) {
GetRequest request = new GetRequest(httpClient, url, "");
String resp = null;
try {
request.execute();
resp = request.getResponseBodyAsString();
} catch (IOException e) {
throw new BBException(e);
}
request.releaseConnection();
if (resp != null) {
this.title = getParser().parseTitle(resp);
}
}
return this.title;
}
use of org.eclipse.ecf.bulletinboard.BBException in project ecf by eclipse.
the class VBParser method parseThreadPageForThreadAttributes.
public Thread parseThreadPageForThreadAttributes(CharSequence seq) throws BBException {
Thread t = (Thread) genericParser.parseSingleIdName(PD_THREAD_ATTRS, seq, new ThreadFactory());
if (t != null) {
Map<ID, IBBObject> forums = genericParser.parseMultiIdName(PD_THREAD_ATTRS_FORUM, seq, new ForumFactory(), true);
Forum prev = null;
Forum f = null;
for (IBBObject obj : forums.values()) {
f = (Forum) obj;
if (prev != null) {
prev.subforums.add(f);
}
f.setParent(prev);
prev = f;
}
t.forum = f;
return t;
} else {
throw new BBException("Failed to parse the thread.");
}
}
use of org.eclipse.ecf.bulletinboard.BBException in project ecf by eclipse.
the class VBulletin method login.
public boolean login(IBBCredentials credentials) throws BBException {
PostRequest request = new PostRequest(httpClient, url, "login.php");
NameValuePair[] params = { new NameValuePair("vb_login_username", credentials.getUsername()), new NameValuePair("cookieuser", "1"), new NameValuePair("vb_login_password", credentials.getPassword()), new NameValuePair("submit", "Login"), new NameValuePair("s", ""), new NameValuePair("do", "login"), new NameValuePair("forceredirect", "0"), new NameValuePair("vb_login_md5password", ""), new NameValuePair("vb_login_md5password_utf", "") };
request.setParameters(params);
try {
request.execute();
request.releaseConnection();
Map<String, String> detectedCookies = VBCookies.detectCookies(httpClient.getState().getCookies());
if (detectedCookies.containsKey(VBCookies.KEY_SESS_ID)) {
// We have a session id
sessionId = detectedCookies.get(VBCookies.KEY_SESS_ID);
}
if (detectedCookies.containsKey(VBCookies.KEY_USER_ID)) {
// We have a user id
ID id = new MemberFactory().createBBObjectId(namespace, url, (String) detectedCookies.get(VBCookies.KEY_USER_ID));
if (id == null) {
return false;
} else {
loggedInMemberId = id;
return true;
}
}
} catch (Exception e) {
throw new BBException(e);
}
return false;
}
Aggregations