Project

General

Profile

Task #1077

Bug #1076: mn.create() not encoding PIDs correctly.

pct-escaping in D1Node.java or MNode.java

Added by Rob Nahf over 13 years ago. Updated over 13 years ago.

Status:
Closed
Priority:
Urgent
Assignee:
Category:
d1_libclient_java
Target version:
Start date:
2010-11-13
Due date:
% Done:

100%

Milestone:
Product Version:
*
Story Points:
Sprint:

Description

No pct-escaping of unsafe identifiers is happening in for the create or update methods. Seems like it should be either in the D1Node.sendrequest() method or MNode.handleCreateOrUpdate() method, but difficult to tell which one is best. rfc3986 recommends the escaping happening at the time of url creation, but that job is split between the two methods. See ResolveUtilities.encodeIdentifier in d1_cn_service/d1_cn_rest for implementation. (Probably should be graduated to d1_common_java, or d1_libclient_java).


Related issues

Blocked by Infrastructure - Bug #1113: cn/resolve not compatible with new schema structure Closed

History

#1 Updated by Rob Nahf over 13 years ago

  • Assignee set to Rob Nahf

A side effect of this is inconsistent creates. Some of the should've been escaped characters get correctly translated, leading to a create, but are still unresolvable, un-gettable, and un meta-able. a list objects works however. For example, id = "test-£-2010316232230887" can be found in list-objects, but not the other methods.

#2 Updated by Rob Nahf over 13 years ago

  • Priority changed from Normal to Urgent
  • Status changed from New to In Progress
  • Category changed from d1_common_java to d1_libclient_java

#3 Updated by Rob Nahf over 13 years ago

  • Estimated time set to 2.00

Plan to move the encodeIdentifier utility class to d1_common_java, along with their Junit tests.

#4 Updated by Rob Nahf over 13 years ago

  • % Done changed from 0 to 70
  • Estimated time deleted (2.00)
  • translation missing: en.field_remaining_hours set to 2.0

#5 Updated by Rob Nahf over 13 years ago

hitting a couple svn obstacles, but almost ready to commit.

#6 Updated by Rob Nahf over 13 years ago

  • % Done changed from 70 to 90

Updated D1Node, MNode, and CNode classes in d1_libclient_java, adding urlencoding to guids / identifiers that go into the path and query sections of the URL. Still need to checkin and run integration tests.

#7 Updated by Rob Nahf over 13 years ago

  • translation missing: en.field_remaining_hours changed from 2.0 to 0.5

#8 Updated by Rob Nahf over 13 years ago

  • % Done changed from 90 to 100

coding is complete, and testing needs to be done at the integration testing level, so am closing this.

#9 Updated by Rob Nahf over 13 years ago

  • Status changed from In Progress to Closed

#10 Updated by Rob Nahf over 13 years ago

  • Estimated time deleted ()

#11 Updated by Rob Nahf over 13 years ago

  • translation missing: en.field_remaining_hours deleted (0.5)

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 14.8 MB)