EMMA Coverage Report (generated Wed Jun 22 19:47:49 EDT 2011)
[all classes][org.jclouds.blobstore.internal]

COVERAGE SUMMARY FOR SOURCE FILE [BlobStoreContextImpl.java]

nameclass, %method, %block, %line, %
BlobStoreContextImpl.java100% (1/1)19%  (3/16)53%  (60/113)46%  (12/26)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class BlobStoreContextImpl100% (1/1)19%  (3/16)53%  (60/113)46%  (12/26)
close (): void 0%   (0/1)0%   (0/4)0%   (0/2)
createBlobMap (String): BlobMap 0%   (0/1)0%   (0/6)0%   (0/1)
createBlobMap (String, ListContainerOptions): BlobMap 0%   (0/1)0%   (0/6)0%   (0/1)
createInputStreamMap (String, ListContainerOptions): InputStreamMap 0%   (0/1)0%   (0/6)0%   (0/1)
equals (Object): boolean 0%   (0/1)0%   (0/5)0%   (0/1)
getAsyncBlobStore (): AsyncBlobStore 0%   (0/1)0%   (0/3)0%   (0/1)
getConsistencyModel (): ConsistencyModel 0%   (0/1)0%   (0/3)0%   (0/1)
getProviderSpecificContext (): RestContext 0%   (0/1)0%   (0/3)0%   (0/1)
getSigner (): BlobRequestSigner 0%   (0/1)0%   (0/3)0%   (0/1)
getUtils (): Utils 0%   (0/1)0%   (0/3)0%   (0/1)
hashCode (): int 0%   (0/1)0%   (0/4)0%   (0/1)
toString (): String 0%   (0/1)0%   (0/4)0%   (0/1)
utils (): Utils 0%   (0/1)0%   (0/3)0%   (0/1)
BlobStoreContextImpl (BlobMap$Factory, Utils, ConsistencyModel, InputStreamMa... 100% (1/1)100% (51/51)100% (10/10)
createInputStreamMap (String): InputStreamMap 100% (1/1)100% (6/6)100% (1/1)
getBlobStore (): BlobStore 100% (1/1)100% (3/3)100% (1/1)

1/**
2 *
3 * Copyright (C) 2011 Cloud Conscious, LLC. <info@cloudconscious.com>
4 *
5 * ====================================================================
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 * ====================================================================
18 */
19package org.jclouds.blobstore.internal;
20 
21import static com.google.common.base.Preconditions.checkNotNull;
22 
23import javax.inject.Inject;
24import javax.inject.Singleton;
25 
26import org.jclouds.blobstore.AsyncBlobStore;
27import org.jclouds.blobstore.BlobMap;
28import org.jclouds.blobstore.BlobRequestSigner;
29import org.jclouds.blobstore.BlobStore;
30import org.jclouds.blobstore.BlobStoreContext;
31import org.jclouds.blobstore.InputStreamMap;
32import org.jclouds.blobstore.attr.ConsistencyModel;
33import org.jclouds.blobstore.options.ListContainerOptions;
34import org.jclouds.rest.RestContext;
35import org.jclouds.rest.Utils;
36 
37/**
38 * @author Adrian Cole
39 */
40@Singleton
41public class BlobStoreContextImpl<S, A> implements BlobStoreContext {
42   private final BlobMap.Factory blobMapFactory;
43   private final InputStreamMap.Factory inputStreamMapFactory;
44   private final AsyncBlobStore ablobStore;
45   private final BlobStore blobStore;
46   private final RestContext<S, A> providerSpecificContext;
47   private final ConsistencyModel consistencyModel;
48   private final Utils utils;
49   private final BlobRequestSigner blobRequestSigner;
50 
51   @SuppressWarnings("unchecked")
52   @Inject
53   public BlobStoreContextImpl(BlobMap.Factory blobMapFactory, Utils utils, ConsistencyModel consistencyModel,
54            InputStreamMap.Factory inputStreamMapFactory, AsyncBlobStore ablobStore, BlobStore blobStore,
55         @SuppressWarnings("rawtypes") RestContext providerSpecificContext, BlobRequestSigner blobRequestSigner) {
56      // unravel guice and avoid passing in a million type args by not injecting generic types for
57      // rest context
58      this.providerSpecificContext = checkNotNull(providerSpecificContext, "providerSpecificContext");
59      this.consistencyModel = checkNotNull(consistencyModel, "consistencyModel");
60      this.blobMapFactory = checkNotNull(blobMapFactory, "blobMapFactory");
61      this.inputStreamMapFactory = checkNotNull(inputStreamMapFactory, "inputStreamMapFactory");
62      this.ablobStore = checkNotNull(ablobStore, "ablobStore");
63      this.blobStore = checkNotNull(blobStore, "blobStore");
64      this.utils = checkNotNull(utils, "utils");
65      this.blobRequestSigner = checkNotNull(blobRequestSigner, "blobRequestSigner");
66   }
67 
68   @Override
69   public ConsistencyModel getConsistencyModel() {
70      return consistencyModel;
71   }
72 
73   @Override
74   public BlobMap createBlobMap(String container, ListContainerOptions options) {
75      return blobMapFactory.create(container, options);
76   }
77 
78   @Override
79   public BlobMap createBlobMap(String container) {
80      return blobMapFactory.create(container, ListContainerOptions.NONE);
81   }
82 
83   @Override
84   public InputStreamMap createInputStreamMap(String container, ListContainerOptions options) {
85      return inputStreamMapFactory.create(container, options);
86   }
87 
88   @Override
89   public InputStreamMap createInputStreamMap(String container) {
90      return inputStreamMapFactory.create(container, ListContainerOptions.NONE);
91   }
92 
93   @Override
94   public BlobStore getBlobStore() {
95      return blobStore;
96   }
97 
98   @Override
99   public AsyncBlobStore getAsyncBlobStore() {
100      return ablobStore;
101   }
102 
103   @SuppressWarnings("unchecked")
104   @Override
105   public RestContext<S, A> getProviderSpecificContext() {
106      return (RestContext<S, A>) providerSpecificContext;
107   }
108 
109   @Override
110   public void close() {
111      providerSpecificContext.close();
112   }
113 
114   @Override
115   public Utils getUtils() {
116      return utils();
117   }
118 
119   @Override
120   public Utils utils() {
121      return utils;
122   }
123 
124   @Override
125   public int hashCode() {
126      return providerSpecificContext.hashCode();
127   }
128 
129   @Override
130   public String toString() {
131      return providerSpecificContext.toString();
132   }
133 
134   @Override
135   public boolean equals(Object obj) {
136      return providerSpecificContext.equals(obj);
137   }
138 
139   @Override
140   public BlobRequestSigner getSigner() {
141      return blobRequestSigner;
142   }
143}

[all classes][org.jclouds.blobstore.internal]
EMMA 2.0.5312 (C) Vladimir Roubtsov