Statistics
| Branch: | Tag: | Revision:

root / src / gr / ebs / gss / server @ 01a30cd0

# Date Author Comment
01a30cd0 06/02/2010 06:26 pm Panagiotis Astithas

Complete quota upgrades with coupons. Also fix equals() and hashCode() for Invitations to consider the name or its components.

978061e3 06/01/2010 05:46 pm Panagiotis Astithas

- Initial implementation of quota coupon workflow. Userclass modifications are not happening yet.
- Factor out the common servlet methods into a base class.
- Style the error messages in registration and coupons.

7a1c02de 05/27/2010 02:17 pm Panagiotis Astithas

Fix the owner permission removal check when updating folders as well, and add the empty permission check to that case, too.

6567092b 05/21/2010 06:43 pm Panagiotis Astithas

Redirect to login for browser requests without a cookie present and also for requests with cookies but without the proper one.

a91ef7e8 05/20/2010 06:28 pm Panagiotis Astithas

Now that we keep around the cookie, give the user the opportunity to use it as the authentication token to get to a file. This way passing around simple file resource URIs is possible, and as long as the user has authenticated with the service in the current browser session, he can access the file. Furthermore, treat such simple browser access as a special case and redirect to login before returning back to the file. Now one can e-mail the file URI to another user and he can click on the link, get prompted to login (or even register for the service) and then get back to the file URI to download it automatically....

86c951b2 05/19/2010 04:16 pm Panagiotis Astithas

Fix more than 100 warnings.

09c35393 05/19/2010 02:09 pm Panagiotis Astithas

Don't allow usernames with spaces.

fd294c94 05/19/2010 02:04 pm Panagiotis Astithas

Fix warnings and stop complaining about parameter assignment. We're not eleven.

d50c0133 05/17/2010 06:09 pm Panagiotis Astithas

Fix the check for removed owner permissions.

f9e01fcb 05/17/2010 01:55 pm Panagiotis Astithas

Handle metadata updates even if they are sent with application/x-www/form-urlencoded content type.

edf24a21 05/06/2010 06:00 pm Panagiotis Astithas

Set all required objectClass attributes when adding an entry to LDAP. Also consistently encode and decode request parameters on success and errors.

46268014 05/05/2010 04:39 pm Panagiotis Astithas

Use firstname & lastname instead of full name for more flexibility and escape commas in property file.

3f6fd106 05/05/2010 03:45 pm Panagiotis Astithas

Create user accounts in an LDAP-based IdP server after registration, so that Shibboleth login can work.

82248972 04/29/2010 06:23 pm Panagiotis Astithas

Implement proper backend lookup for invitations.

2f551abc 04/29/2010 05:54 pm Panagiotis Astithas

Add a user registration flow. Registration can be open for all, or limited to issued invitation codes, as configured in gss.properties.

f1052f48 04/20/2010 05:17 pm Panagiotis Astithas

Make folder move more efficient by not copying the actual file contents.

c35f359f 04/20/2010 02:31 pm Panagiotis Astithas

Split persistentId into identityProvider and identityProviderId for easier DB queries.

eb02e692 04/20/2010 02:00 pm Panagiotis Astithas

Log the file id when indexing fails and hide the stack trace for file not found cases, where it is redundant.

872e1390 04/16/2010 05:39 pm Panagiotis Astithas

Use exponential backoff when updating the password or last login time in WebDAV.

0e64bec2 04/16/2010 05:18 pm Panagiotis Astithas

Display the last login in the web client.

5b07b9ec 04/16/2010 04:32 pm Panagiotis Astithas

Update the last login for WebDAV access as well.

9a2322fc 04/15/2010 06:09 pm Panagiotis Astithas

Add a new API operation for invalidating the current authentication token and returning a new one.

125c5690 04/15/2010 05:04 pm Panagiotis Astithas

Store the time the user last logged-in. Since the user object is now modified in every login, drop the updated flag optimization. Also, remove an obsolete EJB method.

533ade50 04/15/2010 04:39 pm Panagiotis Astithas

Retrieve the persistent-id from Shibboleth and store it in the DBMS for future use. Also, fix a few warnings.

27f2be2f 04/08/2010 01:38 pm Panagiotis Astithas

Log any persistent-id attributes from Shibboleth.

e8e1ac78 04/01/2010 06:42 pm Panagiotis Astithas

Use EHCache for second-level caching.

a1aa74a8 03/15/2010 02:10 pm Panagiotis Astithas

Don't waste time constructing the cookie for the iPhone client login case.

62f168b2 03/11/2010 11:53 am Giannis Koutsoubos

use http caching by using IF-MODIFIED-SINCE HEADERS and handling response accordingly

139f2dd5 03/09/2010 05:43 pm Panagiotis Astithas

Replace JBossMessaging 1.x and its HSQLDB data store with HornetQ. Indexing should be faster and more reliable now.

7d6b1709 01/27/2010 03:28 pm Panagiotis Astithas

Add the file content type to the search results, as specified in the API documentation.

Discovered by: Giorgos Verigakis

51264241 01/26/2010 08:14 pm Panagiotis Astithas

Allow login in development mode to utilize the GWT 2.0 browser plugin.

b7b8c586 01/19/2010 03:35 pm Panagiotis Astithas

Fix warning.

31ec597c 12/08/2009 02:56 pm Panagiotis Astithas

Don't convert spaces to plus signs when downloading a file. This fixes bug #756.

425e3d5e 12/07/2009 05:14 pm Panagiotis Astithas

Fix the updated URL for a modified folder. This closes bug #759.

d1a50647 11/12/2009 01:53 pm Dimitris Routsis

Fix bug introduced through stupid Eclipse cleanup.

65e0a745 11/12/2009 11:45 am Dimitris Routsis

- Check when renaming file that name doesn't already exist.
- Add constraint to DB to ensure we don't get duplicate filenames.

38621e3c 11/12/2009 11:18 am Dimitris Routsis

Throw any exceptions thrown unwrapped. This way, the caller knows what it's dealing with in its try/catch block.
(Previously, everything thrown was an Exception and most (all?) callers would simply turn this into a 500 error, since they don't check the cause.)

ba5f9575 11/11/2009 04:34 pm Panagiotis Astithas

Make folder updates work with a single DB transaction (EJB call). Now the modification date on every child file is properly updated. Also rename modifyFolder() to updateFolder() for consistency with updateFile() and make setFilePermissions/setFolderPermissions private helper methods.

d74c0270 11/11/2009 03:07 pm Panagiotis Astithas

Make file updates work with a single DB transaction (EJB call). Besides the performance benefits, this change properly updates the modification date on every file update.

f24cdf08 11/10/2009 05:05 pm Panagiotis Astithas

Requests without Authorization header should be rejected by isRequestValid().

63975784 11/10/2009 01:05 pm Panagiotis Astithas

Merge with 6e728a7cfa0b1004acb2613421e261890e560813

993e5ea7 11/10/2009 12:40 pm Panagiotis Astithas

Double the retry attempts and the retry timeout in an attempt to better handle the load on the app servers. Also log the final failed retry so that it is greppable in the logs.

a18a4ca4 11/10/2009 12:12 pm Dimitris Routsis

- Add constraint in order to avoid double entries due to concurrency. (Happened twice in production.)
- Add versioning to avoid lost updates. (Impossible to tell if it has already happened.)

5ffd24ee 11/03/2009 05:40 pm Panagiotis Astithas

Don't cache the API responses, since we do it in the various operation handlers.

c17c7081 11/02/2009 06:24 pm Panagiotis Astithas

Don't cache the login, nonce, token and policy paths.

4812228e 10/30/2009 05:00 pm Panagiotis Astithas

Make sure nocache files are never cached and cache files are cached for a year. This way redeployments should never require cleaning the browser cache again. Also, cache everything else for 40 days, to make the application startup snappier.

10786b3c 10/30/2009 04:47 pm Panagiotis Astithas

Use the modification date for files in search results, too.

d0d4d0f5 10/29/2009 05:53 pm Panagiotis Astithas

Send and display modification dates for shared, others and trash namespaces, since the UI file list code is the same for both the files namespace and these virtual namespaces. It is also more consistent to use the same reduced file representation for every namespace.

d114cfe2 10/20/2009 12:51 pm Panagiotis Astithas

Allow setting the modification date when updating a file.

82481089 10/16/2009 06:13 pm Panagiotis Astithas

Update the FileHeader auditInfo when uploading a new body.

49ab3ac4 09/30/2009 07:03 pm Fotis Stamatelopoulos

merge

daadfde6 09/30/2009 06:47 pm Fotis Stamatelopoulos

better matching of MS Office mime types (in showing file icons and indexing)

3b6b7f25 09/28/2009 02:32 pm Dimitris Routsis

Retry transactions in the face of optimistic locking exceptions for all "write" transactions in WebDAV API.
Move TransactionHelper class to EJBs so it is visible from both REST and WebDAV WARs.

2f1a60e0 09/28/2009 12:39 pm Dimitris Routsis

Retry transactions in the face of optimistic locking exceptions for all "write" transactions in REST API.

f22e4d5d 09/24/2009 03:55 pm Dimitris Routsis

Change to folder modification semantics: When anything inside a folder is updated (including file and folder metadata), modification user and date should be updated also for all parent folders up to root.

c524530e 09/10/2009 12:46 pm Dimitris Routsis

Fixed broken caching in IE.

c25c6507 09/08/2009 04:02 pm Dimitris Routsis

Prevent any client from creating group including / in name (by sending BAD REQUEST response.)

867d129b 09/04/2009 06:01 pm Fotis Stamatelopoulos

Added the groupURI parameter when parsing permissions, which precedes the group parameter. This allows the unique identification of groups throughout the application. We keep the group parameter for backwards compatibility with old clients

bd5ad44d 09/04/2009 11:31 am Dimitris Routsis

Fix bug: Delete user didn't work for group with international name.

a0dde818 09/03/2009 06:19 pm Panagiotis Astithas

Fix wrong encoding in new folder names, by returning the already constructed URI. This required that createFolder() returns the newly-created folder, which was always a good idea (builder pattern).

77dcb3f1 09/02/2009 05:51 pm Panagiotis Astithas

Retry transactions in the face of optimistic locking exceptions when creating folders or modifying resources. Also avoid an extra EJB call by returning the modified folder after the fact.

739f501e 08/21/2009 03:08 pm Panagiotis Astithas

Avoid a NPE when the next parameter is empty.

9fd42cf4 08/07/2009 05:39 pm Panagiotis Astithas

Fix multiple file uploads in IE using Google Gears. It needed a POST instead of PUT, which required accommodating it in the server-side code. Also, error codes from file uploads are not handled in IE, since merely accessing the request.status field throws an internal error.

144fe6ce 08/04/2009 12:56 pm Panagiotis Astithas

Parse the nextUrl parameter with URI instead of URL so that chrome: URIs can be used for redirection. This should simplify the login process for Firefox extensions.

4684df80 07/06/2009 06:23 pm Fotis Stamatelopoulos

- added a few more mime-types when attempting to identify mime-type from the file extension
- remove warnings (uneeded throws declarations)

d3e41d00 07/06/2009 05:30 pm Fotis Stamatelopoulos

Merge with d1e79f3c8c8779d14ab5297049bdc0812f942654

f3f7bdf3 07/06/2009 05:28 pm Fotis Stamatelopoulos

ignore case when examining the file extension for guessing the mime-type

f4122f48 07/06/2009 04:31 pm Dimitris Routsis

Fixed bug that prevented tags with international characters from being indexed properly, causing search to fail. (Bug #864 #2)

cee371d9 07/06/2009 03:49 pm Dimitris Routsis

Fixed broken search for international characters. (Bug #864)

918daa9b 07/06/2009 01:12 pm Dimitris Routsis

Merge with 24c6efe7ed90856868433076609836d2a95f7154

2be5f35d 07/06/2009 01:11 pm Dimitris Routsis

Fixed bug: When copying a versioned file, destination versioned flag wasn't set, causing only last version to be copied.

4c44fdca 07/06/2009 12:25 pm Dimitris Routsis

Fixed problems copying/moving via drag-and-drop had with international characters in file / folder names.

d130cf43 07/03/2009 06:05 pm Fotis Stamatelopoulos

dropped SOAP

41ea71a3 07/03/2009 04:29 pm Fotis Stamatelopoulos

Merge with f948e955504b0f4f31c1fe813f97f0297cd64cdb

4d737770 07/03/2009 04:25 pm Fotis Stamatelopoulos

- more efficient moveFile implementation
- code clean up for better maintenance and easier implementation of future file storage layering

78137d35 07/03/2009 03:54 pm Dimitris Routsis

Move create new WebDAV password URL from /users to plain / for user.

87097cf9 07/02/2009 04:53 pm Dimitris Routsis

Merge with 2a2d62f9da9674f80214a52654521f9e6d807b99

b4348269 07/02/2009 04:29 pm Dimitris Routsis

Switch reset WebDAV password from GET to POST.

c917374b 07/02/2009 12:18 pm Panagiotis Astithas

Use a different strategy for login in development environments that does not require me to recompile the web client for production deployment. Now, if the testUsername property is found in gss.properties the server treats the value as an authenticated username....

bdaa0811 07/01/2009 06:40 pm Panagiotis Astithas

Merge with 7326fe16b35cbc65c6c6e1c59d8f7e107cd351ce

98e2f2ae 07/01/2009 06:38 pm Panagiotis Astithas

Fix a typo.

503040ef 07/01/2009 06:36 pm Dimitris Routsis

If no WebDAV password has ever been generated, copy token to it at initial login, to make sure user sees value in Show Credentials dialog.

6cf8fb8b 07/01/2009 12:17 pm Dimitris Routsis

Properly update others shares when refreshing / expanding tree after other user has changed sharing. (Bug #703)

66c7511a 06/29/2009 03:31 pm Dimitris Routsis

- Remove completely Permission entry for user that get assigned no permissions at all when updating file / folder permissions.
- Delete orphan Permission entries when updating file / folder permissions. (Used to stay behind)

20dae4f9 06/29/2009 12:39 pm Dimitris Routsis

When using token as WebDAV password (fallback case), also copy it to webdavpassword field so it will never expire.

304f3a5f 06/26/2009 05:52 pm Dimitris Routsis

Fallback for transition to new WebDAV password: If no password has been created, use token as before.

3ef7b691 06/25/2009 06:45 pm Dimitris Routsis

Add system-generated password for WebDAV. (Bug #705)

78214787 06/23/2009 05:31 pm Panagiotis Astithas

Minor cleanups.

a9e3c075 06/23/2009 12:11 pm Dimitris Routsis

Uploaded files should be counted towards owner's (i.e. namespace owner's) quota, not uplolader's.

f656aeb2 06/17/2009 06:11 pm Panagiotis Astithas

Use an exponential backoff strategy for retrying rolled back transactions.

204107fb 06/15/2009 04:01 pm Panagiotis Astithas

Introduce TransactionHelper, a utility class for retrying the supplied transactional command in the face of rollbacks caused by optimistic lock exceptions. This allows multiple file uploads to succeed, even in a single core system.

Also make hitting the ENTER key behave the same as clicking the Upload button.

617fe906 06/12/2009 06:17 pm Dimitris Routsis

- Add "Save file as" menu that forces browser to download file instead of opening it inline.
- Fix broken international characters in browser Save As dialog.

b6510556 06/11/2009 03:40 pm Dimitris Routsis

Uploaded files should be checked against owner's (i.e. namespace owner's) quota, not uplolader's.

b76a3f91 06/11/2009 12:51 pm Dimitris Routsis

Fixed bug: Uploading a new version of a versioned file with no quota left would leave file without any bodies at all.

6dddaedf 06/10/2009 02:21 pm Dimitris Routsis

Fixed bug: Uploading a new version of a versioned file with no quota left would leave file without any bodies at all.

d3ff9c69 06/05/2009 12:06 pm Dimitris Routsis

Centralize quota retrieval.

f0c744b4 06/04/2009 05:01 pm Panagiotis Astithas

Decode file names received by PUT, as we do with file names received by multipart POST.

7513cffa 06/04/2009 04:34 pm Panagiotis Astithas

Use application/json content type for all JSON responses.

16baf609 06/04/2009 12:02 pm Panagiotis Astithas

Remove the redundant gss top-level directory.