| | |
| | | import javax.servlet.http.HttpServletRequest;
|
| | | import javax.servlet.http.HttpServletResponse;
|
| | |
|
| | | import com.gitblit.models.*;
|
| | | import org.eclipse.jgit.lib.Repository;
|
| | |
|
| | | import com.gitblit.Constants;
|
| | |
| | | import com.gitblit.IStoredSettings;
|
| | | import com.gitblit.Keys;
|
| | | import com.gitblit.manager.IGitblit;
|
| | | import com.gitblit.models.RefModel;
|
| | | import com.gitblit.models.RegistrantAccessPermission;
|
| | | import com.gitblit.models.RepositoryModel;
|
| | | import com.gitblit.models.ServerSettings;
|
| | | import com.gitblit.models.TeamModel;
|
| | | import com.gitblit.models.UserModel;
|
| | | import com.gitblit.utils.DeepCopier;
|
| | | import com.gitblit.utils.HttpUtils;
|
| | | import com.gitblit.utils.JGitUtils;
|
| | |
| | | * Handles remote procedure calls.
|
| | | *
|
| | | * @author James Moger
|
| | | *
|
| | | */
|
| | | public class RpcServlet extends JsonServlet {
|
| | |
|
| | |
| | | } catch (GitBlitException e) {
|
| | | response.setStatus(failureCode);
|
| | | }
|
| | | } else if (RpcRequest.FORK_REPOSITORY.equals(reqType)) {
|
| | | // fork repository
|
| | | UserRepositoryCompositeModel userRepositoryCompositeModel = deserialize(request, response,
|
| | | UserRepositoryCompositeModel.class);
|
| | | RepositoryModel repoModel = userRepositoryCompositeModel.getRepositoryModel();
|
| | | UserModel userModel = userRepositoryCompositeModel.getUserModel();
|
| | | try {
|
| | | if (repoModel != null && userModel != null) {
|
| | | gitblit.fork(repoModel, userModel);
|
| | | } else {
|
| | | System.out.println("Non existing user model or repo model");
|
| | | response.setStatus(failureCode);
|
| | | }
|
| | |
|
| | | } catch (GitBlitException e) {
|
| | | response.setStatus(failureCode);
|
| | | }
|
| | | } else if (RpcRequest.EDIT_REPOSITORY.equals(reqType)) {
|
| | | // edit repository
|
| | | RepositoryModel model = deserialize(request, response, RepositoryModel.class);
|