Added: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/main/java/org/apache/clerezza/triaxrs/util/uri/UriPathNormalizer.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/main/java/org/apache/clerezza/triaxrs/util/uri/UriPathNormalizer.java?rev=1031067&view=auto
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/main/java/org/apache/clerezza/triaxrs/util/uri/UriPathNormalizer.java
 (added)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/main/java/org/apache/clerezza/triaxrs/util/uri/UriPathNormalizer.java
 Thu Nov  4 16:34:52 2010
@@ -0,0 +1,160 @@
+/*******************************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *  
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *  
+ *  Unless required by applicable law or agreed to in writing,
+ *  software distributed under the License is distributed on an
+ *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ *  KIND, either express or implied.  See the License for the
+ *  specific language governing permissions and limitations
+ *  under the License.
+ *  
+ 
*******************************************************************************/
+package org.apache.clerezza.triaxrs.util.uri;
+
+// taken from Wasp
+/**
+ * Implementation of URI normalization algorithm.
+ */
+public final class UriPathNormalizer {
+
+       private UriPathNormalizer() {
+               // no instances
+       }
+
+       /**
+        * Returns normalized <code>path</code> (or simply the 
<code>path</code> if
+        * it is already in normalized form). Normalized path does not contain 
any
+        * empty or "." segments or ".." segments preceded by other segment than
+        * "..".
+        *
+        * @param path path to normalize
+        * @return normalize path
+        */
+       public static String normalize(String path) {
+               if ((path != null) && (path.indexOf(".") == -1) && 
(path.indexOf("//") == -1)) { //$NON-NLS-1$ //$NON-NLS-2$
+                       return path;
+               }
+
+               boolean wasNormalized = true;
+
+               // 1. count number of nonempty segments in path
+               // Note that this step is not really necessary because we could 
simply
+               // estimate the number of segments as path.length() and do the 
empty
+               // segment check in step two ;-).
+               int numSegments = 0;
+               int lastChar = path.length() - 1;
+               for (int src = lastChar; src >= 0;) {
+                       int slash = path.lastIndexOf('/', src);
+                       if (slash != -1) {
+                               // empty segment? (two adjacent slashes?)
+                               if (slash == src) {
+                                       if (src != lastChar) { // ignore the 
first slash occurence
+                                               // (when numSegments == 0)
+                                               wasNormalized = false;
+                                       }
+                               } else {
+                                       numSegments++;
+                               }
+                       } else {
+                               numSegments++;
+                       }
+                       src = slash - 1;
+               }
+
+               // 2. split path to segments skipping empty segments
+               int[] segments = new int[numSegments];
+               char[] chars = new char[path.length()];
+               path.getChars(0, chars.length, chars, 0);
+               numSegments = 0;
+               for (int src = 0; src < chars.length;) {
+                       // skip empty segments
+                       while (src < chars.length && chars[src] == '/') {
+                               src++;
+                       }
+
+                       if (src < chars.length) {
+                               // note the segment start
+                               segments[numSegments++] = src;
+
+                               // seek to the end of the segment
+                               while (src < chars.length && chars[src] != '/') 
{
+                                       src++;
+                               }
+                       }
+               }
+               // assert (numSegments == segments.length);
+
+               // 3. scan segments and remove all "." segments and "foo",".." 
segment
+               // pairs
+               final int DELETED = -1;
+               for (int segment = 0; segment < numSegments; segment++) {
+                       int src = segments[segment];
+                       if (chars[src++] == '.') {
+                               if (src == chars.length || // "."
+                                               chars[src] == '/') { // "./"
+                                       // delete the "." segment
+                                       segments[segment] = DELETED;
+                                       wasNormalized = false;
+                               } else { // ".something"
+                                       if (chars[src++] == '.' && (src == 
chars.length || // ".."
+                                                       chars[src] == '/')) { 
// "../"
+                                               // we have the ".." segment
+                                               // scan backwards for segment 
to delete together with
+                                               // ".."
+                                               for (int toDelete = segment - 
1; toDelete >= 0; toDelete--) {
+                                                       if (segments[toDelete] 
!= DELETED) {
+                                                               if 
(chars[segments[toDelete]] != '.') {
+                                                                       // 
delete the two segments
+                                                                       
segments[toDelete] = DELETED;
+                                                                       
segments[segment] = DELETED;
+                                                                       
wasNormalized = false;
+                                                                       // } 
else {
+                                                                       // // 
Oops! We've found ".." segment - there
+                                                                       // is 
nothing more to delete!
+                                                               }
+                                                               break;
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
+               }
+
+               // 4. join the result, if necessary
+               if (wasNormalized) { // already normalized? nothing to do...
+                       return path;
+               } else {
+                       // join the resulting normalized path, retain the 
leading and ending
+                       // slash
+                       int dst = (chars[0] == '/') ? 1 : 0;
+
+                       for (int segment = 0; segment < numSegments; segment++) 
{
+                               int segmentStart = segments[segment];
+                               if (segmentStart != DELETED) {
+                                       // if we remembered segment legths in 
step 2, we could use
+                                       // System.arraycopy method now but we 
had to allocate one
+                                       // more array
+
+                                       for (int src = segmentStart; src < 
chars.length; src++) {
+                                               char ch = chars[src];
+                                               chars[dst++] = ch;
+                                               if (ch == '/') {
+                                                       break;
+                                               }
+                                       }
+
+                               }
+                       }
+
+                       return new String(chars, 0, dst);
+               }
+       }
+}

Added: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/main/resources/org/apache/clerezza/triaxrs/util/resource.properties
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/main/resources/org/apache/clerezza/triaxrs/util/resource.properties?rev=1031067&view=auto
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/main/resources/org/apache/clerezza/triaxrs/util/resource.properties
 (added)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/main/resources/org/apache/clerezza/triaxrs/util/resource.properties
 Thu Nov  4 16:34:52 2010
@@ -0,0 +1,233 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#  
+#   http://www.apache.org/licenses/LICENSE-2.0
+#  
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.  
+
+# Class and Method Validation
+classNotAProvider={0} is not a provider. Ignoring.
+classNotAResourceNorProvider={0} is neither a resource nor a provider. 
Ignoring.
+classNotADynamicResourceNorResourceNorProvider={0} is not a dynamic resource, 
resource, or provider. Ignoring.
+classAlreadyAdded=The class {0} was already added. Ignored.
+classNotValid=The class {0} may only have one of the following declarations: 
{1} {2} {3}
+classIsUnknownProvider=Annotated @Provider class does not implement a 
recognized Provider interface: {0}
+isNotAClassWithMsgFormat={0} is not a class or the class has unresolved 
dependencies. Ignoring.
+resourceClassNotValid=The resource class {0} is not a valid resource. 
Ignoring.  Ensure that it has a javax.ws.rs.Path annotation and is unique.
+rootResourceInstanceIsAnInvalidResource=Root resource {0} instance is an 
invalid resource.  Ensure that it has a javax.ws.rs.Path annotation and is 
unique.
+classInstantiationExceptionWithMsgFormat=Failed to instantiate class {0}.
+classIllegalAccessWithMsgFormat=Illegal access to {0}.
+loadingClassToApplication=Class {0} was added to application.
+loadingApplication=Loading application from {0}
+
+exceptionOccurredDuringClassProcessing=An exception occurred during processing 
of class {0} Ignoring class.
+listExceptionDuringClassProcessing=The following exception occurred during 
processing of class: 
+exceptionOccurredDuringSingletonProcessing=An exception occurred during 
processing of singleton {0} Ignoring singleton.
+listExceptionDuringSingletonProcessing=The following exception occurred during 
processing of class: 
+exceptionOccurredDuringInstanceProcessing=An exception occurred during 
processing of instance {0} Ignoring.
+listExceptionDuringInstanceProcessing=The following exception occurred during 
processing of instance: 
+
+methodNotAnnotatedCorrectly=The method {0} in class {1} is not annotated with 
an http method designator nor the Path annotation. This method will be ignored.
+subresourceLocatorIllegalEntityParameter=Sub-Resource locator {0} contains an 
illegal entity parameter. The locator will be ignored.
+subresourceLocatorAnnotatedConsumesProduces=Sub-Resource locator {0} is 
annotated with Consumes/Produces. These annotations are ignored for 
sub-resource locators
+
+# Loading config
+configNotFound=Could not find {0} Ignoring.
+exceptionClosingFile=Exception when closing file
+propertyNotDefined={0} property was not defined.
+alternateShortcutMapLoadFailure=Failed to load alternateShortcutMap
+alternateShortcutMapCloseFailure=Exception when closing file:  
+
+# Provider Information
+uploadDirDoesNotExist=Upload directory {0} does not exist or is not a 
directory, uploading entity to default temporary directory
+cannotUseFileAsResponse=Can not write file {0} to response, file is not 
readable or is a directory
+
+jaxbObjectFactoryInstantiate=Failed to instantiate object factory for {0}
+
+# internals
+mediaTypeSetAlreadyContains=The set already contains {0} Skipping...
+invalidServletContextAccessor={0} must be 
javax.servlet.http.HttpServletRequest or javax.servlet.http.HttpServletResponse.
+
+# writing
+noWriterOrDataSourceProvider=Could not find a writer or DataSourceProvider for 
{0} type and {1} mediaType.
+noWriterFound=Could not find a writer for {0} type and {1} mediaType.
+
+# Spring
+springClassReplaceNewerObjectFactory=The {0} was replaced by a newer object 
factory.
+springBeanClassNotDynamicResource=The bean {0} of class {1} is not a 
DynamicResource.
+springBeanNotResourceNorProvider=The bean {0} of class {1} is neither resource 
nor provider
+springExceptionOccurredDuringFieldInject=Exception occured during the fields 
injection for bean: 
+ 
+# Injection
+injectionFailureSingleton=Failed to inject fields of singleton {0}
+
+# Asset Provider
+assetLocatorMethodMoreThanOneEntityParam=Asset locator method {0} has more 
than one entity parameter. Only a single entity parameter is allowed.
+assetMethodInvokeError=Error invoking asset method {0} 
+assetMustHavePublicConstructor=Failed to instantiate asset {0} Assets must 
have a default public contructor.
+assetCannotInstantiate=Cannot instantiate asset {0}
+
+# Atom Provider
+atomRequestEntityNotAtomEntry=Request entity is not an atom entry (it was 
unmarshalled as {0}
+atomRequestEntityNotAtomFeed=Request entity is not an atom feed (it was 
unmarshalled as {0}
+
+# JSON Provider
+jsonErrorSAXParserFeature=Error while setting SAX parser feature for JSON 
provider
+jsonFailConvertXMLToJSON=Failed to convert XML to JSON
+jsonFailConvertJAXBToJSON=Failed to convert JAXB object {0} to JSONObject
+jsonFailWriteJSONObject=Failed to write JSONObject
+jsonFailReadJSONObject=Failed to read JSONObject
+jsonFailWriteJSONArray=Failed to write JSONArray
+jsonFailReadJSONArray=Failed to read JSONArray
+
+# JAXB Provider
+jaxbObjectFactoryNotFound=ObjectFactory for {0} was not found
+jaxbElementFailToBuild=Failed to build JAXBElement for {0}
+jaxbObjectFactoryNotAnnotatedXMLRegistry=Found ObjectFactory for {0} is not 
annotated with XmlRegistry.class
+jaxbFailToUnmarshal=Failed to unmarshal {0}
+jaxbFailToMarshal=Failed to marshal {0}
+jaxbCreateDefaultJAXBElement=Creating default JAXBElement for {0}
+
+# Failure Messages
+mediaTypeWrongFormat={0} is an invalid MediaType format.  Verify that the 
format is like "type/subtype".
+methodDoesNotHandleType=Method does not handle {0}
+unhandledExceptionToContainer=Unhandled exception
+exceptionOccurredDuringInvocation={0} occurred during the handlers chain 
invocation
+
+# Contexts
+uriBadBaseURI=Bad base URI: {0} 
+
+# Error Flow
+exceptionOccurredDuringExceptionMapper=Exception occurred while executing 
toResponse of the ExceptionMapper
+
+# WebDAV
+webDAVNoEditOrSelfLink=The resource {0} has set no edit or self link
+webDAVFailSetupPropertyHelper=Failed to setup property helper
+webDAVFailCreateMarshaller=Failed to create WebDAV marshaller
+webDAVFailCreateUnmarshaller=Failed to create WebDAV unmarshaller
+webDAVUnableToParseElement=Unable to parse the WebDAV {0} element
+webDAVIncompatibleTypeInRequest=Incompatible type in the WebDAV {0} element: 
received {1} but the requested is {2}
+webDAVUnableToMarshalElement=Unable to marshal the WebDAV {0} element
+
+noMethodInClassSupportsHTTPMethod=Could not find any method in class {0} that 
supports {1}
+noMethodInClassConsumesHTTPMethod=Could not find any method in class {0} that 
consumes {1}
+noMethodInClassProducesHTTPMethod=Could not find any method in class {0} 
capable of producing {1}
+
+# Client Handler
+clientIssueRequest=Issuing client {0} method request to URI at {1} with {2} 
entity class and {3} headers
+clientAcceptHeaderHandlerSetAccept=Accept header automatically set to: {0}
+clientResponseIsErrorCode=Client response is an error code: {0}
+clientConfigurationUnmodifiable=Client configuration is unmodifiable because 
it is in-use by a client.  Please construct a new client configuration.
+entityTypeMustBeParameterized=EntityType must be parameterized.
+clientNoWriterForTypeAndMediaType=No javax.ws.rs.ext.MessageBodyWriter found 
for type {0} and media type {1}.  Verify that all entity providers are 
correctly registered.
+clientCannotConvertEntity=Entity of type {0} cannot be cast as type {1}
+clientNoReaderForTypeAndMediaType=No javax.ws.rs.ext.MessageBodyReader found 
for type {0} and media type {1}.  Verify that all entity providers are 
correctly registered.
+
+# Server Handlers
+checkLocationHeaderHandlerIllegalArg=Mandatory "Location" header was not set 
for status code {0}
+populateResponseMediaTypeHandlerFromCompatibleMessageBodyWriters=Content-Type 
not specified via Response object or via @javax.ws.rs.Produces annotation so 
automatically setting via generic-type compatible 
javax.ws.rs.ext.MessageBodyWriter providers
+populateResponseMediaTypeHandlerNoAcceptableResponse=No acceptable concrete 
Content-Types, so sending a 406 Not Acceptable response to the client.
+
+# Servlet/Filter Messages
+restServletJAXRSApplicationInitParam=Using application class {0} named in 
init-param {1}
+restServletWinkApplicationInitParam=Using application classes {0} named in 
init-param {1}
+restServletUseDeploymentConfigurationParam=Using deployment configuration 
class {0} named in init-param {1}
+restServletUsePropertiesFileAtLocation=Using properties file at {0} named in 
init-param {1}
+restServletRequestProcessorCouldNotBeCreated=Request processor could not be 
created.
+adminServletRequestProcessorInitBeforeAdmin=Request processor should be 
initialized prior calling to admin servlet.
+adminServletFailCreateJAXBForAdminServlet=Failed to create JAXBContext for 
AdminServlet
+adminServletFailMarshalObject=Failed to marshal object {0}
+
+# Server
+cannotGetOutputStreamSinceWriterRequested=Cannot get OutputStream since Writer 
already requested.
+writerCannotGetWriterSinceOutputStreamRequested=Cannot get Writer since 
OutputStream already requested.
+rootResourceCollectionListIsNull=CollectionList is null.
+
+parameterHttpsIsEmptyOrNotInitialized=Parameter httpsURI is empty or not 
initialized
+parameterHttpIsEmptyOrNotInitialized=Parameter httpsURI is empty or not 
initialized
+uriInfoInvalidURI=A URI with an invalid syntax was given.
+methodCallOutsideScopeOfRequestContext=Method call made outside the scope of a 
request context.
+
+# others
+methodCannotHandleType=Method cannot handle {0}
+missingVariable=Missing variable {0}
+valueAtIndexIsNull=Value argument at index {0} is null
+variableIsEmpty=Value for variable {0} is empty
+resourceNotAnnotated=Resource is not annotated with {0} annotation
+methodNotAnnotated=Method is not annotated with {0} annotation
+methodWithClassNotAnnotatedCorrectly=Method {0} in class {1} is not annotated 
correctly.
+moreThanOneMethodAnnotated=More than one method with {0} annotation exists
+noMethodAnnotated=No method with {0} annotation exists
+invalidPort=Port is not valid
+isInvalid={0} is invalid
+segmentAtIndexIsNull=Segment at index {0} is null
+variableIsNull=Value for variable {0} is null
+variableNotSuppliedAValue=variable {0} was not supplied a value
+patternNotCompiled=Pattern not compiled
+syntaxErrorInvalidTemplateForm=Syntax error: {0} contains invalid template form
+valueFromMethodMustBeType=Value returned from method {0} must be of type {1}
+returnedTypeWas=Returned object was type {0}
+notASupportedResourceMethodParam=Type {0} is not a supported resource method 
parameter
+cannotConvertValueFromTo=Cannot convert value {0} to {1}
+cannotCreateFactoryForClass=Cannot create factory for class {0}
+cannotCreateDefaultFactoryForDR=Cannot create default factory for 
DynamicResource: {0}
+cannotCreateDefaultFactoryFor=Cannot create default factory for class: {0}
+cookieCannotContainAddlVers=Cookie cannot contain additional $Version: {0}
+cookieMustStartWithVersion=Cookie must start with $Version: {0}
+cookieDoesNotContainNAMEVALUE=Cookie does not contain NAME+VALUE: {0}
+failedToParseCookie=Failed to parse Cookie: {0}
+invalidCookie=Invalid Cookie: {0}
+jaxrsCacheControlTypeSupport=JAX-RS CacheControl type is designed to support 
only cache-response-directives
+headerIsNull={0} header is null
+cookieIsNull=Cookie is null
+cookieNameNotValid=Invalid Cookie - Cookie Name {0} is not valid
+cookieNameValueNotValid=Invalid Cookie - Cookie Name value {0} is not valid
+entityTagNotQuoted=Entity Tag {0} is not quoted properly
+cannotMixInlineAndOutOfLine=Cannot mix inline and out-of-line categories 
attributes
+failedToCreateJAXBContextFor=Failed to create JAXBContext for {0}
+contentMayHaveInlineOrOutContent=Content element may have either inline or 
out-of-line content
+typeAttribMustHaveValidMimeType=Type attribute of content element must be a 
valid mime type when content is out-of-line
+noValidConstructorFoundFor=No valid constructor found for {0}
+unsupportedOperator=Unsupported operator {0}
+methodHasMultipleEntityParams=Resource method {0} has more than one entity 
parameter
+multipleHTTPAnnotationsOnMethod=Multiple http method annotations on method {0} 
in class {1}
+errorSettingUpAtom=Error setting up Atom JAXB utils: {0}
+errorOccurredProcessingRequest=An error has occurred while processing a request
+conflictingParameterAnnotations=Conflicting parameter annotations for {0}
+couldNotFindWriter=Could not find a writer for {0} and {1} Try to find JAF 
DataSourceProvider
+cannotCastTo=Cannot cast {0} to {1}
+mediaTypeHeaderNull=MediaType header is null
+multiPartStreamAlreadyClosed=Stream already closed: The PartInputStream is not 
accessible after moving to the next part.
+lastMatchWasUnsuccessful=Last match was unsuccessful
+variableContainsMoreThanOneValueForJoinOperator=Variable '{0}' contains more 
than one value for join operator
+matchedSuffixMustEndWith=The matched suffix must end with '{0}'
+matchedSuffixMustStartWith=The matched suffix must start with '{0}'
+listOperatorMustHaveOnlyOneVariable=The list operator MUST only have one 
variable
+suffixOperatorMustOnlyHaveOneVariable=The suffix operator MUST only have one 
variable
+prefixOperatorMustHaveOnlyOneVariable=The prefix operator MUST only have one 
variablemultiPartStreamAlreadyClosed=Stream already closed: The PartInputStream 
is not accessible after moving to the next part.
+lastMatchWasUnsuccessful=Last match was unsuccessful
+variableContainsMoreThanOneValueForJoinOperator=Variable '{0}' contains more 
than one value for join operator
+matchedSuffixMustEndWith=The matched suffix must end with '{0}'
+matchedSuffixMustStartWith=The matched suffix must start with '{0}'
+listOperatorMustHaveOnlyOneVariable=The list operator MUST only have one 
variable
+suffixOperatorMustOnlyHaveOneVariable=The suffix operator MUST only have one 
variable
+prefixOperatorMustHaveOnlyOneVariable=The prefix operator MUST only have one 
variable
+missingClientAuthenticationCredentialForUser=Missing client authentication 
credential for user: {0}
+serviceFailedToAuthenticateUser=Service failed to authenticate user: {0}
[email protected] was found on a 
superclass or interface on class {0}.  Annotate @javax.ws.rs.ext.Provider on 
the provider class directly to ensure portability between environments.
[email protected] was found on a 
superclass or interface on class {0}.  Annotate @javax.ws.rs.Path on the root 
resource class directly to ensure portability between environments.
[email protected] found on interface or 
abstract class {0} and is being ignored. Annotate @javax.ws.rs.ext.Provider on 
the provider implementation or base class directly and return that in your 
javax.ws.rs.core.Application subclass.
+entityRefsNotSupported=Entity references are not supported in XML documents 
due to possible security vulnerabilities.
+saxParseException=The system cannot parse the XML content into a {0} instance. 
 Verify that the XML content is valid.
+saxParserConfigurationException=The system cannot configure the SAX parser 
with the given configuration parameter.
+badXMLReaderInitialStart=The XMLStreamReader instance has already been 
partially processed.

Copied: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/blackbox/SourceProviderTest.java
 (from r1030880, 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/blackbox/TestSourceProvider.java)
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/blackbox/SourceProviderTest.java?p2=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/blackbox/SourceProviderTest.java&p1=incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/blackbox/TestSourceProvider.java&r1=1030880&r2=1031067&rev=1031067&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/blackbox/TestSourceProvider.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/blackbox/SourceProviderTest.java
 Thu Nov  4 16:34:52 2010
@@ -46,6 +46,7 @@ import org.apache.clerezza.triaxrs.mock.
 import org.apache.clerezza.triaxrs.mock.RequestURIImpl;
 import org.apache.clerezza.triaxrs.mock.ResponseImpl;
 import org.apache.clerezza.triaxrs.testutils.HandlerCreator;
+import org.junit.Ignore;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.wymiwyg.wrhapi.HeaderName;
@@ -59,8 +60,7 @@ import org.wymiwyg.wrhapi.util.MessageBo
  * @author ali
  * 
  */
-
-public class TestSourceProvider {
+public class SourceProviderTest {
        private JaxRsHandler handler = 
HandlerCreator.getHandler(MyResource.class);
        private RequestURIImpl uri = new RequestURIImpl();
        private TransformerFactory transformerFac = 
TransformerFactory.newInstance();

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/util/MediaTypeComparatorTest.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/util/MediaTypeComparatorTest.java?rev=1031067&r1=1031066&r2=1031067&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/util/MediaTypeComparatorTest.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/util/MediaTypeComparatorTest.java
 Thu Nov  4 16:34:52 2010
@@ -32,12 +32,11 @@ import javax.ws.rs.core.Variant.VariantL
 import javax.ws.rs.ext.RuntimeDelegate;
 
 import junit.framework.Assert;
+import org.apache.clerezza.triaxrs.headerDelegate.MediaTypeHeaderDelegate;
 
 import org.junit.After;
 import org.junit.Before;
 import org.junit.Test;
-import org.apache.clerezza.triaxrs.headerDelegate.MediaTypeProvider;
-import org.apache.clerezza.triaxrs.util.MediaTypeComparator;
 
 public class MediaTypeComparatorTest {
        
@@ -105,7 +104,7 @@ public class MediaTypeComparatorTest {
                        if (!clazz.equals(MediaType.class)) {
                                throw new UnsupportedOperationException("not 
supported in test");
                        }
-                       return (HeaderDelegate<T>) new MediaTypeProvider();
+                       return (HeaderDelegate<T>) new 
MediaTypeHeaderDelegate();
                }
 
                @Override

Modified: 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/util/TestQueryParserUtil.java
URL: 
http://svn.apache.org/viewvc/incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/util/TestQueryParserUtil.java?rev=1031067&r1=1031066&r2=1031067&view=diff
==============================================================================
--- 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/util/TestQueryParserUtil.java
 (original)
+++ 
incubator/clerezza/trunk/org.apache.clerezza.parent/org.apache.clerezza.triaxrs/org.apache.clerezza.triaxrs/src/test/java/org/apache/clerezza/triaxrs/util/TestQueryParserUtil.java
 Thu Nov  4 16:34:52 2010
@@ -56,7 +56,7 @@ public class TestQueryParserUtil {
         MultivaluedMap<String,String> matrix = 
QueryStringParser.getMatrix(query, encode);
         
         assertNotNull(matrix);
-        assertEquals("{scale=[32000], long=[20], lat=[50]}", 
matrix.toString());
+        assertEquals("[lat=50,long=20,scale=32000]", matrix.toString());
     }
     
     @Test


Reply via email to