Commit graph

681 commits

Author SHA1 Message Date
Winston Li
a7ba5ef59b Ignore .idea and *.iml again. 2016-09-06 09:11:32 +01:00
Winston Li
523ea5139e Update example conf and README 2016-09-06 09:11:32 +01:00
Winston Li
eb77d166e2 Add checkDB to upgrade the DB 2016-09-06 09:11:32 +01:00
Winston Li
52e5d2921f Sanitise s3 info and fix for s3 2016-09-06 09:11:32 +01:00
Winston Li
9936fbe3c9 Implement and test the swap job, and add integration test 2016-09-06 09:11:32 +01:00
Winston Li
dd5694104d Delete the SnapshotRepositoryBuilder and WLBridgedProject abominations. Set accessed time after update and push. 2016-09-06 09:11:32 +01:00
Winston Li
c459cd57af Implement and test SwapJobImpl 2016-09-06 09:11:32 +01:00
Winston Li
a595acd0a6 Add and test GetNumProjects 2016-09-06 09:11:32 +01:00
Winston Li
4b014826d3 Add and test InMemorySwapStore 2016-09-06 09:11:32 +01:00
Winston Li
f036ff2c8b Add and test an SQL update for only setting a project's last_accessed if it's missing 2016-09-06 09:11:32 +01:00
Winston Li
9d19cdd261 Implement and test DBStore swap_table functionality 2016-09-06 09:11:32 +01:00
Winston Li
d2b628d904 Move stuff to bridge package 2016-09-06 09:11:32 +01:00
Winston Li
f3eb32e2ec Catch more exceptions in db init 2016-09-06 09:11:32 +01:00
Winston Li
cfc02bbcc8 Remove DB fluff layer 2016-09-06 09:11:32 +01:00
Winston Li
c3609803c0 Change DBStore to target a file 2016-09-06 09:11:32 +01:00
Winston Li
25fea8ef58 Implement bz2 support and test 2016-09-06 09:11:32 +01:00
Winston Li
8c0937511e Add implementations, implement S3SwapStore (with only tars), FSRepoStore, Tar and File utils, add tests 2016-09-06 09:11:32 +01:00
Winston Li
692b979098 Large refactor of parts into distinct components / interfaces 2016-09-05 15:45:57 +01:00
Winston Li
5b810b64ba Decouple jgit's Repository class from the Bridge 2016-09-05 15:45:57 +01:00
Winston Li
598ea8a6fb Ugrade jgit and jgit.http.server to 4.4.1.201607150455-r and fix tests 2016-08-20 13:22:07 +01:00
Winston Li
3389615ef6 Use better error message for problems building repo (#1576) 2016-08-20 12:15:34 +01:00
Marc Egea i Sala
d143baf489 Add more logging to commit action (#16) 2016-06-09 10:26:22 +01:00
Marc Egea i Sala
cb2e12d3b0 Merge pull request #15 from overleaf/handler-refactor
Put API handlers into their own namespace
2016-06-07 07:57:07 +01:00
John Lees-Miller
4fb9cbdf19 Restore a removed logging statement 2016-06-03 16:45:16 +01:00
John Lees-Miller
7cb82f3c18 Add tests for file content API 2016-06-03 16:22:10 +01:00
John Lees-Miller
42d1236063 Check for missing project before checking key 2016-06-03 16:11:31 +01:00
John Lees-Miller
1ac07526dc Reorganise postbacks and files under /api 2016-06-03 16:11:02 +01:00
Marc Egea i Sala
2a87513603 Merge pull request #14 from overleaf/performance-improvements
Build RepositoryObjectTreeWalker only once per commit
2016-06-03 15:46:32 +01:00
Marc Egea i Sala
f4d4ce0da1 Build RepositoryObjectTreeWalker only once per commit 2016-06-03 15:40:48 +01:00
John Lees-Miller
7ed93bc2cc Log to temp file when running tests 2016-06-03 11:47:25 +01:00
John Lees-Miller
64b49904e4 Use logback so we can use two log streams
We want all logs on stdout, for debugging, and warnings and errors
on stderr, for remote monitoring. The SLF4J SimpleLogger can't seem
to do this, but logback does, and we can still use the same SLF4J
interface.
2016-06-03 11:47:25 +01:00
John Lees-Miller
758bc3eb8c Add missing newline at end of file 2016-06-02 12:59:23 +01:00
John Lees-Miller
9c63ea6c93 Upgrade some testing dependencies 2016-06-02 12:41:24 +01:00
John Lees-Miller
13a75fdb95 Upgrade google http and oauth clients to 1.22.0 2016-06-02 12:26:58 +01:00
John Lees-Miller
c3725e3246 Upgrade async-http-client to 1.9.38 2016-06-02 12:22:14 +01:00
John Lees-Miller
dbaa78928e Upgrade sqlite-jdbc to 3.8.11.2 2016-06-02 12:13:17 +01:00
John Lees-Miller
bbde2d31d8 Upgrade gson to 2.6.2 2016-06-02 12:13:13 +01:00
John Lees-Miller
ad81e7a2ee Upgrade joda-time to 2.9.4 2016-06-02 12:01:35 +01:00
John Lees-Miller
1edaf5fe77 Upgrade to jetty 9.3.9 2016-06-02 11:57:04 +01:00
John Lees-Miller
465db49a22 Remove installation scripts
We now handle production deployment using some ansible playbooks based
on these scripts, so rather than having slightly different versions in
two places, I think it’s safer to remove them for now.
2016-06-02 10:39:21 +01:00
John Lees-Miller
8ea3ed5dbe Add IDEA project files
Using this .gitignore file to decide what to commit:
https://github.com/github/gitignore/blob/master/Global/JetBrains.gitigno
re
2016-06-02 10:15:14 +01:00
Marc Egea i Sala
6a57dd2d9b Improve indentation 2016-05-23 16:16:40 +01:00
Marc Egea i Sala
45254bf34a Add minimal git config to repos
The test don't pass unless a minimal configuration for Git is provided.
With this change, we don't rely on the final user to provide this
configuration.

Every time a repository is cloned on tests we're adding a configuration
only for that repository that's not going to clash with any other
configuration already set.
2016-05-23 15:59:24 +01:00
Winston Li
d582e3e1cf Remove and replace Util.sout and .serr 2016-04-18 11:03:55 +01:00
Winston Li
a409a15f07 Fix #1384, possibly #1174 too 2016-04-05 20:39:36 +01:00
Winston Li
bb619bfaf1 Add tests that reproduce #1384. 2016-04-05 04:17:15 +01:00
Winston Li
08f3497a9e Improve logging around main operations.
PostbackManager.java: check for actual postback promise before waiting.
2016-04-03 12:17:06 +01:00
Winston Li
ab09d044a8 Improve logging for catching #1174, and fix tests. 2016-04-01 05:23:59 +01:00
Winston Li
a4df78c73d Improve logging.
- Add sanitised Config and test
- Fix issue with file permissions
2016-03-31 06:35:09 +01:00
Winston Li
559b32a22f Integrate slf4j simple logger and change some messages. Declare some exceptions in tests 2016-03-11 09:46:03 +00:00
Marc Egea i Sala
7048032463 Exception to handle files too big to be processed 2016-02-04 10:22:18 +00:00
Marc Egea i Sala
b3e140ed40 Provide custom message on 401 errors 2016-01-19 10:44:03 +00:00
Winston Li
850cbcf0c6 Merge bug fixes with oauth2 skipping 2016-01-04 04:34:26 +00:00
Winston Li
53d3033b5c Implement auth skipping on non-protected projects 2016-01-04 04:14:50 +00:00
Winston Li
a9a74890d2 Delete stuff that should be gitignored 2016-01-04 02:53:40 +00:00
Marc Egea i Sala
866f7dedee Fix error log folder
Error log is stored under /var/log/err.log. This PR fixes it and stores the log under /var/log/wlgb/err.log
2015-11-30 11:06:00 +00:00
Marc Egea i Sala
dfb4835cc1 Merge pull request #6 from overleaf/version-update
Update local version after processing snapshots
2015-11-30 11:00:41 +00:00
John Lees-Miller
318e11deeb mock the persistent store with jmock 2015-11-24 12:06:43 +00:00
John Lees-Miller
e2574ab163 fix whitespace 2015-11-24 12:06:05 +00:00
John Lees-Miller
62749a0dab update to IDEA 15 2015-11-24 12:05:54 +00:00
John Lees-Miller
624c3e6af1 update to junit 4.12 to get jmock working
Also moved junit to the test scope.
2015-11-24 12:05:24 +00:00
Marc Egea i Sala
937d9c82b4 Update local version after processing snapshots 2015-11-23 16:24:22 +00:00
Marc Egea i Sala
6a25132f0c InteliJ IDEA project library files 2015-11-23 12:30:46 +00:00
Marc Egea i Sala
229ed1c09d Try to download file if it's not in the git tree 2015-11-23 09:36:24 +00:00
Marc Egea i Sala
18bb534f96 Handle 401 errors as ptorected projects 2015-11-19 10:40:07 +00:00
Winston Li
0156aa8c51 Update README.md 2015-10-25 13:58:40 +00:00
Winston Li
1872eba223 Implementation of OAuth2 2015-10-25 13:44:38 +00:00
Winston Li
c3db415ce7 Implement config changes and tests 2015-10-25 11:19:02 +00:00
Marc Egea i Sala
6ae47e8821 Bugfix: using statusElement and not codeElement again 2015-10-02 15:22:55 +01:00
Marc Egea i Sala
3970fb146c Handle response errors through Util.getCodeFromResponse
Centralizing the exceptions to provide more details on fail.
2015-09-30 10:45:58 +01:00
Marc Egea i Sala
8648f8bde7 Use WLUser to provide default name and email 2015-09-29 11:36:10 +01:00
Marc Egea i Sala
61a5c5870c Support for anonymous saved versions
This fixes a case when de API sends a version without user. There was a
bug allowing to create anonymous versions in the application and we
have to support the old data.

The problem here is that SnapshotInfo classes are inflated from json
via Gson. This method does not call any constructor and, since the json
does not include the ‘user’ key, the bridge crashes because we’re not
expecting null users.

I’m not happy with this fix, but is the minimum solution that does not
affect anything else.
2015-09-25 16:15:37 +01:00
Marc Egea i Sala
78c92e62b6 Loggin API response in order to figure out the use case for errors 2015-09-24 12:33:51 +01:00
Winston Li
70c963c38f Fix issue with pulling 2 new identical binary files with known name 2015-08-05 19:41:27 +01:00
Winston Li
4fbd6eaabe Fix issue with cloning multiple identical files and add test 2015-08-04 21:14:13 +01:00
Winston Li
34c2d7f613 Add test for f385cffd 2015-08-04 20:32:41 +01:00
Winston Li
f2701568f6 Fix issue with pulling a file identical to an existing file 2015-08-04 20:06:06 +01:00
John Lees-Miller
3ac0b0c2de avoid NPE if project directory does not exist; fixes #10 2015-04-26 21:00:28 -04:00
Winston Li
d697f75c77 pushFailsOnUnexpectedError integration test. 2015-03-10 12:14:10 +00:00
Winston Li
a0eb4b0946 pushFailsOnInvalidProject integration test. 2015-03-10 12:02:41 +00:00
Winston Li
c36a1de7c3 pushFailsOnInvalidFiles integration test. 2015-03-10 11:49:31 +00:00
Winston Li
105ab215b2 Bye travis. 2015-03-10 00:33:41 +00:00
Winston Li
896b00d4ac Add local repo config setting for travis. 2015-03-10 00:26:48 +00:00
Winston Li
7e803bb950 pushFailsOnSecondStageOutOfDate integration test. 2015-03-10 00:19:12 +00:00
Winston Li
d1156cb812 Remove exit code assertion from push failing as it is undefined. 2015-03-10 00:13:15 +00:00
Winston Li
9245037abf pushFailsOnFirstStageOutOfDate integration test. 2015-03-09 23:56:16 +00:00
Winston Li
4781a78926 canPushFilesSuccessfully integration test. 2015-03-09 23:37:58 +00:00
Winston Li
8f416cfd60 canPullDeletedNestedFiles integration test. 2015-03-09 23:22:40 +00:00
Winston Li
1de56ef76b canPullAModifiedNestedFile integration test. 2015-03-09 23:15:27 +00:00
Winston Li
f0f5333161 canPullADeletedBinaryFile integration test. 2015-03-09 23:08:53 +00:00
Winston Li
5e8e042ad2 canPullAModifiedBinaryFile integration test. 2015-03-09 23:02:57 +00:00
Winston Li
60ca2f1788 canPullAModifiedTexFile integration test. 2015-03-09 22:55:00 +00:00
Winston Li
5a00c84359 Refactor with deletion and tests. 2015-03-09 22:41:55 +00:00
Winston Li
8993702f69 Initial large refactor. 2015-03-09 22:41:55 +00:00
Winston Li
79307923ad Allow null directories in directory deletion methods. 2015-03-09 22:35:40 +00:00
Winston Li
83db4e6a10 Joda-Time for ISO6801 timestamps. 2015-03-09 21:38:53 +00:00
Winston Li
e7c1b29008 Change timestamp parsing to include milliseconds. 2015-03-09 21:29:03 +00:00
Winston Li
e6bdbe8f17 Fix the rest of the tests 2015-03-05 15:39:05 +00:00
Winston Li
5df8b2b65f Change 2 tests to launch git in separate process. 2015-03-05 15:21:28 +00:00
Winston Li
3d53226853 Use shared instance of AsyncHttpClient and close Stream in ResourceFetcher. 2015-02-24 10:30:39 +00:00
Winston Li
77c4576b59 Fix SQL injection. 2015-02-23 11:00:34 +00:00
Winston Li
4561409450 Fix url index bug with renaming. 2015-02-22 10:56:47 +00:00
Winston Li
ad7c7a4ba5 Fix bug with Overleaf commits swapping name and email. 2015-02-22 10:41:21 +00:00
Winston Li
6e5163c186 Fix project atts directory deletion to delete base directory too. 2015-02-22 10:20:30 +00:00
Winston Li
ec0c70c622 Delete project atts directory after push. 2015-02-22 10:09:35 +00:00
Winston Li
59001735b1 Remove loading messages. 2015-02-22 02:59:50 +00:00
Winston Li
52f2190346 Fix ResourceFetcher log message. 2015-02-22 02:35:03 +00:00
Winston Li
b01ec908e1 Delete url indexes on successful push. 2015-02-22 02:35:03 +00:00
Winston Li
70d9c0e31d Fix url index lookups for same commit and add log messages. 2015-02-22 02:35:03 +00:00
Winston Li
be806d293c Delete un-needed files from mem builds. 2015-02-22 02:35:03 +00:00
Winston Li
0c0da41bb9 Fix equals bug in ServletFile diff. 2015-02-22 02:35:03 +00:00
Winston Li
4a396c2c17 Set latest seen version after non empty snapshot fetch. 2015-02-22 02:35:02 +00:00
Winston Li
680c7fabf7 Add stack trace prints and remove bugged git config. 2015-02-22 02:35:02 +00:00
Winston Li
a91390dd37 Add IF NOT EXISTS to index creation sql statement. 2015-02-22 02:35:02 +00:00
Winston Li
fee792f5ee In-place diffs during push snapshot creation. 2015-02-22 02:35:02 +00:00
Winston Li
ec13e184b7 Implement no_mem git-uploads. 2015-02-22 02:35:02 +00:00
Winston Li
4110dcc2a9 Redesigned SQL interface. 2015-02-22 02:35:02 +00:00
Winston Li
4d98159398 (fix #9) Fix start-stop-daemon call by removing --name option. 2015-02-21 01:43:21 +00:00
Winston Li
5ecc36b80e Modify init script to use start-stop-daemon for stopping. 2015-02-21 01:24:10 +00:00
Winston Li
30521b988b Graceful kill with write lock and per project read locks. 2015-02-21 00:52:20 +00:00
Winston Li
ac50c26aef (fix #8) Add better error message for 403 protected projects with integration test and support. 2015-02-20 12:42:04 +00:00
John Lees-Miller
e51576dff9 ensure LANG is set to a UTF-8 locale
Otherwise, all input is assumed to be ASCII by default, which causes UTF-8 characters to be replaced by question marks. "C.UTF-8" the C locale with the UTF-8 codeset.
2015-02-20 11:13:04 +00:00
Winston Li
682a7e93ad Added stack trace print. 2015-01-15 23:03:12 +00:00
Winston Li
70808b14b5 Added try-catch-finally block for remaining instances of lock releasing. 2015-01-15 23:00:32 +00:00
Winston Li
34185c7067 Took the sudo back out again. 2015-01-11 17:38:31 +00:00
Winston Li
4eda2a81ba Restored broken images and removed print statements. 2015-01-11 17:36:51 +00:00
Winston Li
e124a74c2f Fixed bug with git not adding deleted files. 2015-01-11 17:23:49 +00:00
Winston Li
d4613864c0 Changed a string containing writelatex. 2015-01-11 16:24:42 +00:00
Winston Li
9e1d28b9bb Put the sudos back in. 2015-01-11 16:17:05 +00:00
Winston Li
cd7877e02e Added the rest of the test. 2015-01-11 16:01:56 +00:00
Winston Li
a276b7c806 Added integration test for pulling a modified tex file. 2015-01-11 15:54:36 +00:00
Winston Li
21455e494a Removed sudo from mvn package in reinstall script. 2015-01-11 15:28:29 +00:00
Winston Li
e8120a98dd Fixed a test repo. 2015-01-11 15:27:44 +00:00
Winston Li
984969b155 Added canCloneMultipleRepositories integration test. 2015-01-11 15:21:11 +00:00
Winston Li
3a63d9c225 Added actual img 2015-01-11 14:16:53 +00:00
Winston Li
dd6c38dd5b Changed the name of the directory from git to repo. 2015-01-11 12:38:17 +00:00
Winston Li
a9c8deca7f Fixed generated wlgb file root. 2015-01-11 12:19:01 +00:00
Winston Li
517792517c Stopped using getResource. 2015-01-11 12:13:25 +00:00
Winston Li
0dd12e5323 Renamed class. 2015-01-11 12:01:53 +00:00
Winston Li
d8a8493a82 Moved directory. 2015-01-11 12:00:11 +00:00
Winston Li
8dc7f17e46 Added versions. 2015-01-11 11:55:19 +00:00
Winston Li
0c12b3dbd6 Added maven compiler level. 2015-01-11 11:46:13 +00:00
Winston Li
41fc758dd3 Changed maven2 to maven. 2015-01-11 11:38:20 +00:00
Winston Li
f09ed593d7 Removed print statements. 2015-01-11 11:29:19 +00:00
Winston Li
3f67e62846 First integration test. 2015-01-11 11:23:33 +00:00
Winston Li
3a532a76df Added integration test directory and wrote FileUtil and tests. 2015-01-11 09:11:12 +00:00
Winston Li
f5e068a46e Updated readme. 2015-01-10 12:55:57 +00:00
Winston Li
937c36d61e Changed mv jar to cp jar. 2015-01-10 12:54:06 +00:00
Winston Li
0e6f554e42 Added opposite arrows for inbound http requests. 2015-01-10 11:32:33 +00:00
Winston Li
ca936d6630 Added better logging with timestamps and removed verbose http responses. 2015-01-10 11:28:25 +00:00
Winston Li
ae3808e5ad Changed response message slightly. 2015-01-10 09:12:58 +00:00
Winston Li
460ba0c4d7 Added reinstall script and changed script names. 2015-01-10 09:07:37 +00:00
Winston Li
0ce8cc074e Reduced amount of logging of outgoing http requests. 2015-01-10 08:59:04 +00:00
Winston Li
26e2b1262d Implemented mock snapshot server. 2015-01-10 08:41:14 +00:00
Winston Li
2310aa124f Fixed typo and changed to only copy config file if one does not already exist. 2015-01-09 07:53:00 +00:00
Winston Li
5633526845 Modifications to install script and deleted betamax jars. 2015-01-09 07:43:12 +00:00
Winston Li
00c0274108 Merge branch 'master' into mvn 2015-01-09 07:22:07 +00:00
Winston Li
27e0952afb Converted build tool to Maven. 2015-01-09 07:21:13 +00:00
John Lees-Miller
5e6c1055c0 put in some example config data 2015-01-07 22:06:19 +00:00
Winston Li
ece573c942 Implemented bare repos. (resolved #5) 2015-01-06 20:36:56 +00:00
Winston Li
553a1064a5 Changed postbackUrl to postbackBaseUrl in config. 2015-01-06 20:13:05 +00:00
Winston Li
fec30532a2 Replaced hostname and ssl config with postbackUrl. (fixed #2, fixed #3) 2015-01-06 20:08:00 +00:00
Winston Li
16d7373800 Added ssl enabled option for postback url construction (#4, #2) and removed api key setting (#3). 2015-01-05 02:18:43 +00:00
Winston Li
995f862669 Allowed postback root to be specified as a config setting (#2) 2015-01-05 00:39:08 +00:00
Winston Li
128e24d2fb Added checking for the master branch. 2014-12-19 14:40:25 +00:00
Ali Lown
ac47f09eb4 Generate valid jar file with manifest 2014-12-09 13:42:37 +00:00
Winston Li
d022acc5c8 Small fixes to README. 2014-12-06 02:03:43 +00:00
Winston Li
84ec961cfb Changed README. 2014-12-06 02:01:47 +00:00
Winston Li
bfefbf0737 Fixed problems in README. 2014-12-06 01:56:07 +00:00
Winston Li
dad5d5a334 Made detailed readme. 2014-12-06 01:50:35 +00:00
Winston Li
f8c311688d Changed hostname to apiBaseUrl. 2014-12-06 01:27:08 +00:00
Winston Li
3e544f9e7c Fixed typo in startup script. 2014-12-06 00:50:16 +00:00
Winston Li
cfe23b57ff Forced hostname to end with / 2014-12-06 00:48:39 +00:00
Winston Li
f39199fa7e Made username and password optional and added serviceName member to config file. 2014-12-06 00:45:18 +00:00
Winston Li
8b700a8c0c Added configurable hostname and basic auth in config file. 2014-12-06 00:23:30 +00:00
Winston Li
816966427e Changed startup script to give config file. 2014-12-05 23:54:42 +00:00
Winston Li
c39e93c152 Changed program arguments to only take config file. 2014-12-05 23:46:37 +00:00
Winston Li
e6274b110b Added -p to mkdir and made uninstall.sh delete /etc/wlgb 2014-12-05 22:43:24 +00:00
Winston Li
5e8836df1a Changed install script. 2014-12-05 22:41:31 +00:00
Winston Li
c9df3e23ec Added .json config file to installation. 2014-12-05 22:39:07 +00:00
Winston Li
d6fd31c239 Added mkdir to install script. 2014-12-05 22:05:22 +00:00
Winston Li
85bf0ee44e Made wlgb script executable. 2014-12-05 22:02:21 +00:00
Winston Li
92fbf973b4 Logging stdout and stderr. 2014-12-05 22:00:55 +00:00
Winston Li
587faab290 Made bin/wlgb executable. 2014-12-05 21:15:37 +00:00
Winston Li
86a1887d1d No longer ignoring bin, but ignoring .jars. 2014-12-05 21:13:35 +00:00
Winston Li
f8fc3376e6 Only deleting .jar file in clean. 2014-12-05 21:12:42 +00:00
Winston Li
332d776ad1 Fixed install-deps.sh. 2014-12-05 21:10:07 +00:00
Winston Li
605107aa74 Made scripts executable. 2014-12-05 21:00:20 +00:00
Winston Li
07cea76931 Added install-deps script. 2014-12-05 20:57:05 +00:00
Winston Li
0438e501f9 Added install and uninstall scripts. 2014-12-05 20:38:12 +00:00
Winston Li
08583e470d Changed order of ant all. 2014-12-05 01:56:07 +00:00
Winston Li
abbd996f9c Fixed test.system to not execute unit tests. 2014-12-05 01:54:38 +00:00
Winston Li
b74ed407d4 Fixed system test in ant. 2014-12-05 01:51:53 +00:00
Winston Li
91f5f6b302 Changed test.system to JUnit tests. 2014-12-05 01:46:19 +00:00
Winston Li
88ac3bab25 Added initial system test. 2014-12-05 01:40:06 +00:00
Winston Li
dff1222052 Moved unit tests directory. 2014-12-05 01:36:20 +00:00
Winston Li
86d5843ff4 Removed slow tests. 2014-12-05 00:41:35 +00:00
Winston Li
50f01e1cf5 Setting time properly. 2014-12-05 00:39:48 +00:00
Winston Li
682f8a290c Getting new createdAt info. 2014-12-05 00:26:10 +00:00
Winston Li
044f67ea49 Saving pushed version ID to db. 2014-12-04 23:58:44 +00:00
Winston Li
0ac263ad45 Checking postback key. 2014-12-04 23:39:43 +00:00
Winston Li
e31b4fead5 Decoding postback GETs. 2014-12-04 23:34:02 +00:00
Winston Li
28e0d8cd42 Added postback key to files. 2014-12-04 23:18:32 +00:00
Winston Li
df751500c5 Added /postback on the end of postbackUrl. 2014-12-04 23:13:44 +00:00
Winston Li
4dc093fcee Made a better postback key. 2014-12-04 21:38:41 +00:00
Winston Li
1561111a0b Fixed handler end of postback key. 2014-12-04 21:30:25 +00:00
Winston Li
c3ef49b17c Basic implementation of postback key. 2014-12-04 21:27:52 +00:00
Winston Li
3887e5025f Added unit test classes. 2014-12-04 21:08:53 +00:00
Winston Li
3d19cb95b9 Removed print and gave more descriptive error. 2014-12-04 20:38:12 +00:00
Winston Li
ce9351186c Initialised descriptionLines. 2014-12-04 20:35:10 +00:00
Winston Li
e57f081c80 Printing in exception. 2014-12-04 20:26:29 +00:00
Winston Li
49028bd27b Implented more descriptive InvalidFilesException. 2014-12-04 20:24:13 +00:00
Winston Li
3ff9dc6b26 Printed invalid files error. 2014-12-04 20:11:05 +00:00
Winston Li
0daecf3f72 Changed request print. 2014-12-04 20:05:07 +00:00
Winston Li
e3ff612813 Printing postback contents. 2014-12-04 20:00:20 +00:00
Winston Li
d070baabde Fixed merge conflict. 2014-12-04 19:53:19 +00:00
Winston Li
ee6273ff8c Added print. 2014-12-04 19:49:51 +00:00
Winston Li
6fc953b008 Added print. 2014-12-04 19:49:51 +00:00
Winston Li
1f12677e76 Added print. 2014-12-04 19:49:51 +00:00
Winston Li
01f59e3f4e Fixed cast. 2014-12-04 19:49:50 +00:00
Winston Li
4ec7d70eff Changed equality testing for FileNode. 2014-12-04 19:49:50 +00:00
Winston Li
e52ef90e13 Made changed be calculated dynamically. 2014-12-04 19:49:50 +00:00
Winston Li
cc77fdd89f Print statement 2014-12-04 19:49:50 +00:00
Winston Li
358abb4503 Initialising blobs in candidate snapshots. 2014-12-04 19:49:50 +00:00
Winston Li
794a0e29e6 Added fix for testing equality of ByteBlobs 2014-12-04 19:49:50 +00:00
Winston Li
1f239d7118 Creating directories. 2014-12-04 19:49:50 +00:00
Winston Li
f72767ceb1 Added print 2014-12-04 19:49:50 +00:00
Winston Li
1db7670f05 Added loading of AttachmentNode blobs. 2014-12-04 19:49:50 +00:00
Winston Li
f429c4bf8b Added print statement. 2014-12-04 19:49:07 +00:00
Winston Li
8483e0b86a Accounting for trailing slashes and .git in project name. 2014-11-20 11:37:32 +00:00
Winston Li
a654529090 Removed print statements. 2014-11-20 11:25:00 +00:00
Winston Li
c42db9eb8b Throwing RepositoryNotFoundException when not found. 2014-11-20 11:23:31 +00:00
Winston Li
2c64fb0e4f Fixed deadlock on exception being thrown. 2014-11-20 10:54:16 +00:00
Winston Li
b847e6f712 Fixed accidental package move. 2014-11-20 10:33:39 +00:00
Winston Li
b5adf31774 Added per-project synchronisation and massively refactored SQLiteWLDatabase. 2014-11-20 10:27:58 +00:00
Winston Li
08277baa77 Added per-project synchronisation. 2014-11-20 09:19:21 +00:00
Winston Li
b51b37f71f Creating atts directory when needed. 2014-11-19 21:31:01 +00:00
Winston Li
0442cd7e0b Creating .wlgb directory if it isn't there. 2014-11-19 21:07:55 +00:00
Winston Li
832009e6cf Finished writing persistent store. 2014-11-19 20:57:31 +00:00
Winston Li
dc47c17264 Loading fetched versions from database. 2014-11-19 19:30:59 +00:00
Winston Li
f103c7e3b5 Loading WLProjectStore from database. 2014-11-19 19:01:18 +00:00
Winston Li
7d47514810 Changed WLDataModel to not delete project directories. 2014-11-19 18:40:34 +00:00
Winston Li
071e0a87cc Wrote persistent store. 2014-11-19 18:28:55 +00:00
Winston Li
dca42ac72b Initial sqlite database creation code. 2014-11-19 13:49:30 +00:00
Winston Li
50023ba265 Loading project and file store from database. 2014-11-17 13:59:11 +00:00
Winston Li
1d4f856832 Moved projects table into WLProjectStore class. 2014-11-17 13:54:37 +00:00
Winston Li
5d1c9d436a Basic sqlite database being loaded. 2014-11-17 13:49:19 +00:00
Winston Li
2a02ed466a Added sqlite-jbdc-3.7.2.jar and javadocs to ant build. 2014-11-17 13:29:26 +00:00
Winston Li
eb8dccc151 Made deleteInDirectory use deleteInDirectoryApartFrom. 2014-11-17 13:09:27 +00:00
Winston Li
555f4e1674 Changed deleteInDirectoryApartFrom to take variadic type. 2014-11-17 13:08:29 +00:00
Winston Li
3bbef6f066 Now deleting all files before writing snapshot to disk. 2014-11-17 12:47:59 +00:00
Winston Li
1e8d7d5840 Removed printing of push data. 2014-11-17 12:31:51 +00:00
Winston Li
3dea6036f8 Added more description exception messages. 2014-11-17 10:59:47 +00:00
Winston Li
bdb34f89e7 Catching everything else in the put hook. 2014-11-17 10:48:53 +00:00
Winston Li
da5b661858 Added exception if the push request returned instantly with an error. 2014-11-17 10:41:36 +00:00
Winston Li
c9d773b6e8 Made constructor for pushed snapshot. 2014-11-17 10:13:01 +00:00
Winston Li
7d650a8604 Removed unused variable. 2014-11-17 10:08:56 +00:00
Winston Li
3d86a3e149 Added exception handling to postback and implemented waiting properly. 2014-11-17 10:00:15 +00:00
Winston Li
3e12845345 Used cond instead. 2014-11-16 22:08:45 +00:00
Winston Li
38cf9e33c6 Added timeout to wait. 2014-11-16 22:04:18 +00:00
Winston Li
ccf17f9867 Extracted project name properly from uri. 2014-11-16 21:58:36 +00:00
Winston Li
48305d963f Testing candidate snapshot approval. 2014-11-16 21:49:16 +00:00
Winston Li
06a7ee6614 Corrected remoteAddr to localName. 2014-11-16 21:00:57 +00:00
Winston Li
db2bf43aa7 Checking local IP of request. 2014-11-16 20:55:44 +00:00
Winston Li
87bd7e6ff4 Setting Content-Type and sending request for SnapshotPushRequest. 2014-11-16 20:43:33 +00:00
Winston Li
375916678d Generating SnapshotPostRequest data correctly. 2014-11-16 20:27:37 +00:00
Winston Li
20c48cbd92 Made changed files accessible via http. 2014-11-16 20:02:30 +00:00
Winston Li
30675a11d4 Successfully creating changed and new files. 2014-11-16 19:59:18 +00:00
Winston Li
05d222ab00 Added POST support to Request class. 2014-11-16 18:56:00 +00:00
Winston Li
f96a29bc45 Implemented WriteLatexDataSource with WriteLatexAPI instead of WLDataModel. 2014-11-16 18:05:44 +00:00
Winston Li
abc698085a Added handlers for resources and SnapshotPushPostback. 2014-11-16 17:58:18 +00:00
Winston Li
74ac6e2379 Added push exceptions and deleting root git directory on program start. 2014-11-16 15:40:12 +00:00
Winston Li
3cd94af7e9 Made RepositoryObjectTreeWalker and associated classes and methods. 2014-11-16 12:43:21 +00:00
Winston Li
ba7d0d318c Iterating over received parent commits. 2014-11-15 17:37:11 +00:00
Winston Li
6d4309267e Fixed directory problem in file store and wrote working code for reading new revs. 2014-11-15 17:10:46 +00:00
Winston Li
abc8854f59 Memory store works except the project name still needs to be passed to writeToFile. 2014-11-14 21:32:37 +00:00
Winston Li
95a17beef4 Worked on file store. 2014-11-14 14:40:05 +00:00
Winston Li
33f59c3f65 DirectoryNode being created for latest snapshot. 2014-11-12 17:41:49 +00:00
Winston Li
f3a24603d9 Fixed test name and added to file store. 2014-11-12 12:20:43 +00:00
Winston Li
ae5a55747e Refactored test package names and added FileIndexStore and BlobHash classes. 2014-11-12 11:54:09 +00:00
Winston Li
5686590a36 Began work on memory file store. 2014-11-08 19:01:47 +00:00
Winston Li
b5513618d0 Refactored so that the correct exceptions are thrown, especially when there is an git repo. 2014-11-08 12:54:06 +00:00
Winston Li
f245e583b4 Cleaned up WLDataModel.java. 2014-11-08 12:08:06 +00:00
Winston Li
ea34136fe7 Refactoring. 2014-11-07 20:41:05 +00:00
Winston Li
0d7f5e4430 Now saves the versions already held. 2014-11-07 18:54:24 +00:00
Winston Li
f43fd39fc7 Basic version of clone working. 2014-11-07 13:18:07 +00:00
Winston Li
0f4e99361f Added data structures for SnapshotGetForVersionRequest. 2014-11-07 12:08:28 +00:00
Winston Li
14feaa9fcb Deleted workspace.xml from git cache. 2014-11-06 14:54:51 +00:00
Winston Li
eaddc7bce5 Changed .gitignore to ignore .idea/workspace.xml. 2014-11-06 14:53:43 +00:00
Winston Li
28013f586c Big refactoring, implemented SnapshotGetSavedVersRequest. 2014-11-06 14:52:13 +00:00
Winston Li
e8bf062a46 Optimised imports. 2014-11-06 12:38:12 +00:00
Winston Li
acd2a52b86 Now fetching missing version IDs. 2014-11-06 12:30:45 +00:00
Winston Li
d59c3da400 Included slf4j jars and implemented Snapshot Fetch API. 2014-11-06 11:43:11 +00:00
Winston Li
6af8a43ffe Added async-http-client to project and ant build. 2014-11-06 10:18:41 +00:00
Winston Li
0234894897 Added gson-2.3 jar to project and ant build. 2014-11-06 09:53:33 +00:00
Winston Li
0a793dccc8 Creating repositories dynamically. 2014-11-05 18:18:43 +00:00
Winston Li
d9a164d673 Moved classes around in packages. 2014-11-05 17:31:14 +00:00
Winston Li
27c5dc1364 Renamed SnapshotRepositorySource to SnapshotRepositoryBuilder and created WLBridgedProject to replace the old SnapshotRepositoryBuilder. 2014-11-05 16:41:41 +00:00
Winston Li
f2c987c658 Made test classes and made BridgedProject class. 2014-11-05 15:46:40 +00:00
Winston Li
8785256229 Wrote some Snapshot code. 2014-11-03 18:01:59 +00:00
Winston Li
ac55180ba2 Refactoring and added unit test. 2014-11-03 17:29:12 +00:00
Winston Li
377ecea693 Made bridge package. 2014-11-03 17:20:15 +00:00
Winston Li
21ec6dd28d Abstracted snapshot work into interface. 2014-11-03 17:19:17 +00:00
Winston Li
8879cb46db Refactoring. 2014-11-03 17:05:21 +00:00
Winston Li
550ddf7090 Added support for system tests. 2014-11-03 16:26:51 +00:00
Winston Li
65b4e3d773 Server now allows clone/pull from existing repositories and rejects all pushes. 2014-11-03 15:05:35 +00:00
Winston Li
7283f1893b Added comments to WLGitBridgeApplication. 2014-11-03 14:23:21 +00:00
Winston Li
3e16106f2d Handles program arguments and prints usage. 2014-11-03 14:20:12 +00:00
Winston Li
dcf8a16d64 Changed readme. 2014-11-03 13:19:49 +00:00
Winston Li
70b9072ab6 Added packaging and clean targets to ant. 2014-11-03 12:59:51 +00:00
Winston Li
bc16fbe578 Fixed layout in build.xml. 2014-11-03 11:35:31 +00:00
Winston Li
f385afed0c Dummy change. 2014-11-03 09:33:52 +00:00
Winston Li
6f5b316c52 Rejecting all pushes. 2014-11-03 09:31:06 +00:00
Winston Li
af39d0d8d0 Removed JDK info from build.xml. 2014-11-02 20:03:51 +00:00
Winston Li
5c2e461b2b Ant working locally. Copied JUnit .jars into project. 2014-11-02 19:57:55 +00:00
Winston Li
abe140c9e7 Changed deps to all in build.xml. 2014-11-02 19:16:15 +00:00
Winston Li
b1de769fc3 Changed generated ant .xml file to build.xml. 2014-11-02 19:13:27 +00:00
Winston Li
e3a6530918 Made .travis.yml file. 2014-11-02 19:01:32 +00:00
Winston Li
4f1c28e8c2 Refactored package names. 2014-11-02 18:47:54 +00:00
Winston Li
2d8580f02b Class and package refactoring with unit tests. 2014-11-02 18:41:18 +00:00
Winston Li
c2fea2ee06 Created classes. 2014-11-02 17:26:55 +00:00
Winston Li
c075a62e95 Marked test directory as test sources root. 2014-11-02 17:20:54 +00:00
Winston Li
535c54b5a5 Initial test server. 2014-11-02 17:15:31 +00:00
Winston Li
f5143e547a Added Jetty .jar to project and created .gitignore for out/ directory. 2014-11-02 16:56:35 +00:00
Winston Li
d1ef703af0 Added jgit.http.server javadocs. 2014-11-01 19:37:18 +00:00
Winston Li
905af06917 Added jgit.http.server jar to project. 2014-11-01 19:35:59 +00:00
Winston Li
2df4f1b0e0 Added JGit library and its JavaDocs. 2014-11-01 16:42:00 +00:00
Winston Li
7039dc36e3 Added initial ant build files. 2014-11-01 16:21:10 +00:00
Winston Li
c63c32c5e3 Idea project. 2014-11-01 16:11:26 +00:00
Winston Li
dcf5055f5a Create README.md 2014-11-01 16:02:46 +00:00
Winston Li
9f38a40cd2 Initial commit 2014-11-01 16:02:22 +00:00