org.jclouds.openstack.swift.v1.binders
Class BindMetadataToHeaders

java.lang.Object
  extended by org.jclouds.openstack.swift.v1.binders.BindMetadataToHeaders
All Implemented Interfaces:
org.jclouds.rest.Binder
Direct Known Subclasses:
BindMetadataToHeaders.BindAccountMetadataToHeaders, BindMetadataToHeaders.BindContainerMetadataToHeaders, BindMetadataToHeaders.BindObjectMetadataToHeaders, BindMetadataToHeaders.ForRemoval

public class BindMetadataToHeaders
extends Object
implements org.jclouds.rest.Binder

Will lower-case header keys due to a swift implementation to return headers in a different case than sent. ex.

 >> X-Account-Meta-MyDelete1: foo
 >> X-Account-Meta-MyDelete2: bar
 
results in:
 << X-Account-Meta-Mydelete1: foo
 << X-Account-Meta-Mydelete2: bar
 

Note


HTTP response headers keys are known to be case-insensitive, but this practice of mixing up case will prevent metadata keys such as those in Turkish from working.


Nested Class Summary
static class BindMetadataToHeaders.BindAccountMetadataToHeaders
           
static class BindMetadataToHeaders.BindContainerMetadataToHeaders
           
static class BindMetadataToHeaders.BindObjectMetadataToHeaders
           
static class BindMetadataToHeaders.BindRemoveAccountMetadataToHeaders
           
static class BindMetadataToHeaders.BindRemoveContainerMetadataToHeaders
           
static class BindMetadataToHeaders.BindRemoveObjectMetadataToHeaders
           
static class BindMetadataToHeaders.ForRemoval
           
 
Constructor Summary
BindMetadataToHeaders(String metadataPrefix)
           
 
Method Summary
<R extends org.jclouds.http.HttpRequest>
R
bindToRequest(R request, Object input)
           
protected  void putMetadata(com.google.common.collect.ImmutableMultimap.Builder<String,String> headers, String key, String value)
           
 com.google.common.collect.ImmutableMultimap<String,String> toHeaders(Map<String,String> metadata)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BindMetadataToHeaders

public BindMetadataToHeaders(String metadataPrefix)
Method Detail

bindToRequest

public <R extends org.jclouds.http.HttpRequest> R bindToRequest(R request,
                                                                Object input)
Specified by:
bindToRequest in interface org.jclouds.rest.Binder

putMetadata

protected void putMetadata(com.google.common.collect.ImmutableMultimap.Builder<String,String> headers,
                           String key,
                           String value)

toHeaders

public com.google.common.collect.ImmutableMultimap<String,String> toHeaders(Map<String,String> metadata)


Copyright © 2009-2014 The Apache Software Foundation. All Rights Reserved.