use of org.matrix.androidsdk.rest.model.group.CreateGroupParams in project matrix-android-sdk by matrix-org.
the class GroupsManager method createGroup.
/**
* Create a group.
*
* @param localPart the local part
* @param groupName the group human name
* @param callback the asynchronous callback
*/
public void createGroup(String localPart, String groupName, final ApiCallback<String> callback) {
final CreateGroupParams params = new CreateGroupParams();
params.localpart = localPart;
params.profile = new GroupProfile();
params.profile.name = groupName;
getGroupsRestClient().createGroup(params, new ApiCallback<String>() {
@Override
public void onSuccess(String groupId) {
Group group = getGroup(groupId);
// if the group does not exist, create it
if (null == group) {
group = new Group(groupId);
group.setGroupProfile(params.profile);
group.setMembership(RoomMember.MEMBERSHIP_JOIN);
mStore.storeGroup(group);
}
callback.onSuccess(groupId);
}
@Override
public void onNetworkError(Exception e) {
callback.onNetworkError(e);
}
@Override
public void onMatrixError(MatrixError e) {
callback.onMatrixError(e);
}
@Override
public void onUnexpectedError(Exception e) {
callback.onUnexpectedError(e);
}
});
}
Aggregations