@@ -46,4 +46,71 @@ def put_attributes(self) -> ActionResult:
4646 self .sdb_backend .put_attributes (
4747 domain_name = domain_name , item_name = item_name , attributes = attributes
4848 )
49- return EmptyResult ()
49+ template = self .response_template (PUT_ATTRIBUTES_TEMPLATE )
50+ return template .render ()
51+
52+ def domain_metadata (self ) -> str :
53+ domain_name = self ._get_param ("DomainName" )
54+ metadata = self .sdb_backend .domain_metadata (domain_name = domain_name )
55+ template = self .response_template (DOMAIN_METADATA_TEMPLATE )
56+ return template .render (metadata = metadata )
57+
58+
59+ CREATE_DOMAIN_TEMPLATE = """<?xml version="1.0" encoding="UTF-8"?>
60+ <CreateDomainResult xmlns="http://sdb.amazonaws.com/doc/2009-04-15/"></CreateDomainResult>
61+ """
62+
63+
64+ LIST_DOMAINS_TEMPLATE = """<?xml version="1.0" encoding="UTF-8"?>
65+ <ListDomainsResponse xmlns="http://sdb.amazonaws.com/doc/2009-04-15/">
66+ <ListDomainsResult>
67+ {% for name in domain_names %}
68+ <DomainName>{{ name }}</DomainName>
69+ {% endfor %}
70+ <NextToken>{{ next_token }}</NextToken>
71+ </ListDomainsResult>
72+ </ListDomainsResponse>
73+ """
74+
75+ DELETE_DOMAIN_TEMPLATE = """<?xml version="1.0"?>
76+ <DeleteDomainResponse xmlns="http://sdb.amazonaws.com/doc/2009-04-15/">
77+ <ResponseMetadata>
78+ <RequestId>64d9c3ac-ef19-2e3d-7a03-9ea46205eb71</RequestId>
79+ <BoxUsage>0.0055590278</BoxUsage>
80+ </ResponseMetadata>
81+ </DeleteDomainResponse>"""
82+
83+ PUT_ATTRIBUTES_TEMPLATE = """<?xml version="1.0" encoding="UTF-8"?>
84+ <PutAttributesResult xmlns="http://sdb.amazonaws.com/doc/2009-04-15/"></PutAttributesResult>
85+ """
86+
87+ GET_ATTRIBUTES_TEMPLATE = """<GetAttributesResponse xmlns="http://sdb.amazonaws.com/doc/2009-04-15/">
88+ <ResponseMetadata>
89+ <RequestId>1549581b-12b7-11e3-895e-1334aEXAMPLE</RequestId>
90+ </ResponseMetadata>
91+ <GetAttributesResult>
92+ {% for attribute in attributes %}
93+ <Attribute>
94+ <Name>{{ attribute["name"] }}</Name>
95+ <Value>{{ attribute["value"] }}</Value>
96+ </Attribute>
97+ {% endfor %}
98+ </GetAttributesResult>
99+ </GetAttributesResponse>"""
100+
101+
102+ DOMAIN_METADATA_TEMPLATE = """<DomainMetadataResponse xmlns="http://sdb.amazonaws.com/doc/2009-04-15/">
103+ <DomainMetadataResult>
104+ <ItemCount>{{ metadata.item_count }}</ItemCount>
105+ <ItemNamesSizeBytes>{{ metadata.item_names_size_bytes }}</ItemNamesSizeBytes>
106+ <AttributeNameCount >{{ metadata.attribute_name_count }}</AttributeNameCount >
107+ <AttributeNamesSizeBytes>{{ metadata.attribute_names_size_bytes }}</AttributeNamesSizeBytes>
108+ <AttributeValueCount>{{ metadata.attribute_value_count }}</AttributeValueCount>
109+ <AttributeValuesSizeBytes>{{ metadata.attribute_values_size_bytes }}</AttributeValuesSizeBytes>
110+ <Timestamp>1225486466</Timestamp>
111+ </DomainMetadataResult>
112+ <ResponseMetadata>
113+ <RequestId>b1e8f1f7-42e9-494c-ad09-2674e557526d</RequestId>
114+ <BoxUsage>0.0000219907</BoxUsage>
115+ </ResponseMetadata>
116+ </DomainMetadataResponse>"""
0 commit comments