private static class SwiftObjectFactory implements SwiftObject.Factory {
@Inject
Provider<MutableObjectInfoWithMetadata> metadataProvider;
public SwiftObject create(MutableObjectInfoWithMetadata metadata) {
return new SwiftObjectImpl(metadata != null ? metadata : metadataProvider.get());
}