Patrick Schmitz [Tue, 2 Nov 2010 20:16:51 +0000 (20:16 +0000)]
CSPACE-3070 - Added support to clear the Spring ACL cache when we make changes (adding or removing perms from a role). This should fix a number of the problems we have been seeing with changes not being enforced. Awaiting better tests to consider the bug closed.
Also propagated another bug fix in AuthorizationDelegate to a separate case. Made some comments to indicate some places where we need to have a more robust (tenant-specific) name for roles, to address CSPACE-3144.
Patrick Schmitz [Tue, 2 Nov 2010 00:03:25 +0000 (00:03 +0000)]
NOJIRA - Partial fix for bugs that occur when displayName of authority term changes. If the change is only in case, the terms were found in the query, but not as we built the payload specifics. This lead to a blank page when viewing the authority term (because the services were returning a 500).
If the change to a displayName is more substantive, the referencing objects will just not be found (see also CSPACE-1927).
Aron Roberts [Thu, 14 Oct 2010 23:22:02 +0000 (23:22 +0000)]
CSPACE-3053: Updated read me file with a first pass at designating 'largetext' fields in object and procedural records - those which require storage of > 500 characters, which is Nuxeo's per-field default for MySQL. The contents of this file must currently be pasted into an active Nuxeo default-repository-config.xml configuration file, such as in /usr/local/share/jboss/templates/collectionspace_mysql/config, and per a follow-on JIRA, might instead be integrated int the services deployment process.
Aron Roberts [Tue, 12 Oct 2010 00:46:13 +0000 (00:46 +0000)]
CSPACE-2779: Added test to create a CollectionObject, one of whose fields contains non-Latin1 Unicode UTF-8 characters. Test is initially commented out so as not to fail on systems where the underlying database system is not configured to use the UTF-8 character set.
Richard Millet [Thu, 7 Oct 2010 19:26:47 +0000 (19:26 +0000)]
CSPACE-3029: Setup Nuxeo "prefetch" configuration for collectionobjects_common list item results for significant performance increase in result list retrieval. This work was completed last week and only now being committed to the trunk.
Aron Roberts [Sat, 2 Oct 2010 00:45:59 +0000 (00:45 +0000)]
CSPACE-2975: Services tenant bindings configuration now specifies validator handlers for LocationAuthority, OrgAuthority, and PersonAuthority; these had been inadvertently omitted. Added tests to Person service to verify that non-word chars in short identifiers / shortIds submitted in request payloads, when creating a Person authority or Person item, return the expected 400 BadRequest response.
Patrick Schmitz [Thu, 30 Sep 2010 05:40:49 +0000 (05:40 +0000)]
CSPACE-2958 Add pagination info to return payloads for refObjs and authorityrefs. The latter also support pagination now, where it did not before. This may seem silly, given that it is just for a given object, but it may be useful to limit the number that are shown on the right side of the UI.
Patrick Schmitz [Wed, 29 Sep 2010 20:48:01 +0000 (20:48 +0000)]
CSPACE-2537 and CSPACE-2955. Added support for ShortDisplayName to location, org, and person authority items. Added shortIdentifier to all authority item list results, and updated the fieldsReturned properties accordingly.
Patrick Schmitz [Wed, 29 Sep 2010 00:35:13 +0000 (00:35 +0000)]
CSPACE-2723 Added information about the fields returned in list results. Returned as a string of concatenated field names delimited with '|' chars. Missed this one in earlier checkin.
Aron Roberts [Mon, 27 Sep 2010 19:26:58 +0000 (19:26 +0000)]
CSPACE-2950: More ad-hoc changes to performance logging with the goal of mere adequacy for 1.0 beta work. Generates CSV entries more readily comparable across layers, interleaved with services-specific log entries.
Aron Roberts [Mon, 27 Sep 2010 07:05:54 +0000 (07:05 +0000)]
CSPACE-2950: Minor generalization of Profiler class. Temporary expedient in log4j config file and CSpace filter class to interleave CSV-style log messages with existing messages, to give Kasper a starting point. These CSV-style messages should instead be logged via a separate file appender.
Aron Roberts [Fri, 24 Sep 2010 00:51:33 +0000 (00:51 +0000)]
CSPACE-2950: Initial placeholder log that more or less matches the format generated by the app layer. Need to work with Chris and Kasper to ensure that this is useful for cross-layer perf evaluation.
Richard Millet [Wed, 22 Sep 2010 22:52:06 +0000 (22:52 +0000)]
CSPACE-2902: Create a resource text file to contain a list of CollectionObject fields that we'll instruct Nuxeo in its config files to convert to type "longtext".
Aron Roberts [Mon, 20 Sep 2010 22:45:39 +0000 (22:45 +0000)]
CSPACE-2863: Trivial modification of comment to reference current discussion about how to handle cases where a term is used in more than one source field in a record; happened across this when working on CSPACE-2783.
Aron Roberts [Mon, 20 Sep 2010 22:04:28 +0000 (22:04 +0000)]
CSPACE-2783: Trivial tweak to short identifiers, display names in Intakes service client test of referencing objects for organization items, to better distinguish organizations from persons.
Patrick Schmitz [Fri, 17 Sep 2010 20:55:22 +0000 (20:55 +0000)]
CSPACE-2021 - Updated to use more recent version of the RestEasy, that fixes a problem encoding non-latin1 Unicode chars as parameters. This caused search tests to pass unicode search terms and terms with punctuation incorrectly.
Changed the handling of partial-term and keyword search to properly escape punctuation, allowing for search on names like O'Hara.
Added beginnings of logic to support search on partial-keyword (keywords with wildcards) and search on keyword phrases (in quotes).
Aron Roberts [Mon, 13 Sep 2010 23:05:27 +0000 (23:05 +0000)]
CSPACE-650: Added test case for keyword search on a Unicode UTF-8 string to CollectionObject tests. Test currently fails and is commented out so as not to break the services tests. (This could potentially be due to a RESTEasy bug that Patrick identified in an SOA-Tech list posting on 2010-09-07.)
Aron Roberts [Mon, 13 Sep 2010 21:38:40 +0000 (21:38 +0000)]
CSPACE-1886: Corrected construction of a Unicode UTF-8 term against which to test partial term querying, per Patrick's comment that \u escapes must be in chars, not Strings.
Aron Roberts [Fri, 10 Sep 2010 18:21:13 +0000 (18:21 +0000)]
CSPACE-2544: Values for the sortBy query parameter are now checked. The use of an invalid value will cause the 'read list' request to fail. This checking introduces a temporary limitation of sorting only on a single field name; a new JIRA will be filed for the task of expanding this to permit sorting on multiple fields.
Aron Roberts [Fri, 10 Sep 2010 18:10:54 +0000 (18:10 +0000)]
CSPACE-2881: Search test of CollectionObject service now has tests for searches on keywords both found within a single field, and for keywords found across two different fields.
Aron Roberts [Thu, 2 Sep 2010 04:28:44 +0000 (04:28 +0000)]
CSPACE-2334,CSPACE-2761,CSPACE-2762: Corrected error in Movement ID pattern; added Object Exit and Transfer of Title ID pattern, to the set of default ID generators.
Richard Millet [Wed, 1 Sep 2010 23:11:36 +0000 (23:11 +0000)]
CSPACE-2142: When a role is deleted, its association(s) with account(s) are not deleted. Consequently, "ghost" roles are being returned in the /accounts/{csid}/accountroles list.
Aron Roberts [Wed, 1 Sep 2010 23:09:06 +0000 (23:09 +0000)]
CSPACE-2066: Added additional test to verify that services are correctly returning authority references from multiple value instances of a repeatable scalar field.
Richard Millet [Mon, 30 Aug 2010 22:44:18 +0000 (22:44 +0000)]
CSPACE-2678: actionGroup not always returned in permroles list views. PermRoles were not being derived from existing Roles and Permissions. Instead, they were being created as independent entities. Now the Import util still creates them as independent payloads, but service calls will create derived entities.
Patrick Schmitz [Sat, 28 Aug 2010 03:01:02 +0000 (03:01 +0000)]
CSPACE-2542 Bug was a side effect of an improperly constructed Person item (passing in a payload with inAuthority set to something different from the authority the Person was actually being added to). This is turn was not detected by services code which should have forced this to be correct. Changed services code for authorities to ensure that this cannot happen. inAuthority values in payloads will be ignored. Made analogous changes to contact service, which has parent references.
Patrick Schmitz [Fri, 27 Aug 2010 06:33:10 +0000 (06:33 +0000)]
CSPACE-2542 Modified the handling of Authorities to support range of specifiers for authority and item, across operations. Modified authorities that support contact sub-resources to support all specifier forms for the authority and item, across operations. Refactored the AuthorityResource classes for the authorities that support contact sub-resources, to simplify code and ensure consistent support.
Richard Millet [Thu, 26 Aug 2010 20:03:11 +0000 (20:03 +0000)]
CSPACE-2727: AuthZ management resources were not responding to gets of /accountroles/{csid}, /permroles/{csid} correctly. These gets now return the details of the relationship records.
Aron Roberts [Wed, 25 Aug 2010 22:09:46 +0000 (22:09 +0000)]
CSPACE-2541,CSPACE-2711: 'owner' field now a repeatable scalar ('owners->owner') in Acquisition records. Multiple value instances of 'owner' field now returned in summary items in lists of Acquisition records, as well. 'fieldCollectionEventName' field now a repeatable scalar ('fieldCollectionEventNames->fieldCollectionEventName') in CollectionObject, Intake, and Acquisition records. Changes made to Nuxeo doctype schemas, and thus requires an 'ant deploy' and a 2-server restart to reflect these changes in the services layer.
Aron Roberts [Wed, 25 Aug 2010 19:58:01 +0000 (19:58 +0000)]
CSPACE-1355: Removed currentLocation and normalLocation fields from authRef properties for Movement service for now, as these two fields will hold plain text values, rather than authority references, in 1.0 alpha.
Patrick Schmitz [Tue, 24 Aug 2010 00:17:19 +0000 (00:17 +0000)]
CSPACE-2660. Added first responsibleDepartment (from list) and the objectName field from the first objectName repeating structure, to the summary list schema.
Aron Roberts [Mon, 23 Aug 2010 20:40:32 +0000 (20:40 +0000)]
CSPACE-2677: Services document framework (and Movement service, in which date fields are first being prototyped) once again allows entry of blank / empty dates in date fields, an obvious requirement in retrospect.
Aron Roberts [Fri, 20 Aug 2010 02:01:35 +0000 (02:01 +0000)]
CSPACE-2671: Multiple changes to CollectionSpace record schema in the services layer, reflecting 1.0 alpha changes specified by the Functional team. Added ten (10) fields, removed two (2) fields, and converted six (6) fields from scalar to repeatable scalar. See comment in issue for list of fields changed. No services tests failed after these changes, however there are no tests currently in place to verify that these fields are working; that work is identified to be carried out in CSPACE-2609.
Aron Roberts [Thu, 19 Aug 2010 23:25:02 +0000 (23:25 +0000)]
CSPACE-2300: Added borrowersAuthorizer field to LoansIn (aka LoansIn) records, in services schema. Constitutes a Nuxeo document type update, and as such requires an 'ant deploy' and a 2-server restart.
Aron Roberts [Thu, 19 Aug 2010 21:11:12 +0000 (21:11 +0000)]
CSPACE-2671: Annotated CollectionObject schema (Nuxeo doctype schema), in the services layer, to reflect the results of a schema change and repeatability review. All fields that will be changed - added, removed, made singly repeatable - are annotated with a '[1.0 alpha]' note; other notes reflect upcoming changes, post-1.0 alpha, to create repeatable groups and the like.
Richard Millet [Thu, 19 Aug 2010 15:54:31 +0000 (15:54 +0000)]
CSPACE-1432: Odd that my SVN client shows these added and checked-in, but apparently not. Original post: Apply "List - pagination (return total items, current page, total pages) " functionality to Account
Richard Millet [Thu, 19 Aug 2010 15:53:12 +0000 (15:53 +0000)]
CSPACE-1432: Odd that my SVN client shows these added and checked-in, but apparently not. Original post: Apply "List - pagination (return total items, current page, total pages) " functionality to Account
Aron Roberts [Wed, 18 Aug 2010 04:12:45 +0000 (04:12 +0000)]
CSPACE-2653: Dates in unrecognized formats, when sent to services as values in date-type fields, now generate error messages, rather than being silently 'dropped' and resulting in null/empty values being stored in those fields. Recognized formats include Nuxeo's supported ISO 8601-based formats, as well as any additional formats configured on a per-tenant basis.
Aron Roberts [Wed, 18 Aug 2010 01:38:25 +0000 (01:38 +0000)]
CSPACE-2418: Services can now accept, as input to date fields in their record types, dates in a variety of representation formats, specified in per-tenant configuration. This will permit free text entry of dates in formats familiar to users in various countries, such as 'MM/dd/yyyy' (USA), 'dd/MM/yyyy' (UK), and 'dd.MM.yyyy' (one of several formats used in Denmark). No validation is yet performed, and dates in unrecognized formats, that cannot be parsed and converted to the ISO 8601-based formats required by Nuxeo and MySQL, are silently dropped, as they were even before this check-in. This is addressed by a new bug, CSPACE-2653.
Aron Roberts [Tue, 17 Aug 2010 02:31:22 +0000 (02:31 +0000)]
CSPACE-2418: Groundwork for supporting free-text entry of dates in a variety of formats. Added utility routines to retrieve per-tenant lists of properties, and demonstrated retrieval of date formats from those properties, and of validating incoming dates against permitted date formats. Need to add ISO 8601-based patterns corresponding to those permitted by Nuxeo, determine how best to identify date fields whose values might be validated, and identify where during incoming payload handling to convert from non-ISO 8601 formats.
Aron Roberts [Mon, 16 Aug 2010 20:21:19 +0000 (20:21 +0000)]
CSPACE-2479: CollectionObject service now returns authority references from objectProductionPerson and objectProductionOrganization fields. (This work will need to be revisited when those two fields become part of repeatable groups; test cases added in this check-in will help ensure we make the necessary changes at that time to continue to pull authrefs from those fields.)
Aron Roberts [Fri, 13 Aug 2010 23:58:42 +0000 (23:58 +0000)]
CSPACE-827,CSPACE-2643: Added dimensions as a structured repeatable group of fields to CollectionObject records. Updated client tests to verify update behavior for dimensions groups, as described in the Common Services REST API documentation. Left six existing scalar dimensions fields in place for backwards compatibility, until dimensions are implemented as a repeatable group across all layers. Updates Nuxeo doctype definition, and thus requires 'ant deploy' from services/trunk and a 2-server restart.
Richard Millet [Thu, 12 Aug 2010 05:19:21 +0000 (05:19 +0000)]
CSPACE-2587: Add a separate log file for service profiling information. Also adding Laramie's filter class that we're using to profile requests to the service layer.
Aron Roberts [Thu, 12 Aug 2010 00:18:21 +0000 (00:18 +0000)]
CSPACE-2628: Fixed issue where the Movemement service was returning empty values in three dateTime fields. Removing the premature encoding of a calendar object to an ISO8601 string in MovementDocumentModelHandler.extractPart() resolved this issue. dateTime values are correctly encoded as ISO 8601 strings in the UTC time zone when a response document is being built, without any intervention required. Added client tests for this behavior.
Aron Roberts [Wed, 11 Aug 2010 19:22:22 +0000 (19:22 +0000)]
CSPACE-2578: Re-enabled test for XML parsing bug, where whitespace (and presumably any text) between the container element of a repeatable group and its first child prevented record creation. After the XML parsing-related improvements in CSPACE-2622, this issue appears to have been resolved, and this test now passes.