summaryrefslogtreecommitdiffstats
path: root/sync
diff options
context:
space:
mode:
Diffstat (limited to 'sync')
-rw-r--r--sync/api/DEPS1
-rw-r--r--sync/api/sync_change.h5
-rw-r--r--sync/api/sync_change_processor.h5
-rw-r--r--sync/api/sync_data.h5
-rw-r--r--sync/api/sync_error.h5
-rw-r--r--sync/api/sync_error_factory.h5
-rw-r--r--sync/api/sync_merge_result.h5
-rw-r--r--sync/api/syncable_service.h8
-rw-r--r--sync/internal_api/DEPS1
-rw-r--r--sync/internal_api/public/base/invalidation.h5
-rw-r--r--sync/internal_api/public/base/model_type.h8
-rw-r--r--sync/internal_api/public/base_node.h5
-rw-r--r--sync/internal_api/public/base_transaction.h8
-rw-r--r--sync/internal_api/public/change_record.h5
-rw-r--r--sync/internal_api/public/data_type_association_stats.h5
-rw-r--r--sync/internal_api/public/http_bridge.h5
-rw-r--r--sync/internal_api/public/http_post_provider_factory.h6
-rw-r--r--sync/internal_api/public/internal_components_factory.h5
-rw-r--r--sync/internal_api/public/internal_components_factory_impl.h6
-rw-r--r--sync/internal_api/public/read_node.h5
-rw-r--r--sync/internal_api/public/read_transaction.h5
-rw-r--r--sync/internal_api/public/sessions/model_neutral_state.h5
-rw-r--r--sync/internal_api/public/sessions/sync_session_snapshot.h5
-rw-r--r--sync/internal_api/public/sessions/sync_source_info.h5
-rw-r--r--sync/internal_api/public/sync_encryption_handler.h7
-rw-r--r--sync/internal_api/public/sync_manager.h9
-rw-r--r--sync/internal_api/public/sync_manager_factory.h5
-rw-r--r--sync/internal_api/public/util/sync_string_conversions.h9
-rw-r--r--sync/internal_api/public/util/syncer_error.h6
-rw-r--r--sync/internal_api/public/util/weak_handle.h4
-rw-r--r--sync/internal_api/public/write_node.h5
-rw-r--r--sync/internal_api/public/write_transaction.h5
-rw-r--r--sync/js/DEPS1
-rw-r--r--sync/js/js_arg_list.h5
-rw-r--r--sync/js/js_controller.h6
-rw-r--r--sync/js/js_event_details.h5
-rw-r--r--sync/js/js_event_handler.h6
-rw-r--r--sync/js/sync_js_controller.h5
-rw-r--r--sync/notifier/DEPS1
-rw-r--r--sync/notifier/invalidation_state_tracker.h5
-rw-r--r--sync/notifier/invalidation_util.h11
-rw-r--r--sync/notifier/invalidator_factory.h5
-rw-r--r--sync/notifier/invalidator_registrar.h5
-rw-r--r--sync/notifier/invalidator_state.h5
-rw-r--r--sync/notifier/object_id_invalidation_map.h10
-rw-r--r--sync/notifier/p2p_invalidator.h7
-rw-r--r--sync/protocol/DEPS1
-rw-r--r--sync/protocol/proto_enum_conversions.h5
-rw-r--r--sync/protocol/proto_value_conversions.h6
-rw-r--r--sync/protocol/sync_protocol_error.h9
-rw-r--r--sync/syncable/DEPS1
-rw-r--r--sync/syncable/directory.h5
-rw-r--r--sync/syncable/write_transaction.h5
-rw-r--r--sync/util/DEPS1
-rw-r--r--sync/util/cryptographer.h5
-rw-r--r--sync/util/extensions_activity_monitor.h7
-rw-r--r--sync/util/get_session_name.h5
-rw-r--r--sync/util/nigori.h5
-rw-r--r--sync/util/time.h7
59 files changed, 188 insertions, 124 deletions
diff --git a/sync/api/DEPS b/sync/api/DEPS
index c3b8bac..c526c08 100644
--- a/sync/api/DEPS
+++ b/sync/api/DEPS
@@ -1,4 +1,5 @@
include_rules = [
+ "+sync/base",
"+sync/internal_api/base_node.h",
"+sync/internal_api/public",
"+sync/protocol",
diff --git a/sync/api/sync_change.h b/sync/api/sync_change.h
index d519cfe..50becf4 100644
--- a/sync/api/sync_change.h
+++ b/sync/api/sync_change.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -11,6 +11,7 @@
#include "base/location.h"
#include "sync/api/sync_data.h"
+#include "sync/base/sync_export.h"
namespace syncer {
@@ -19,7 +20,7 @@ namespace syncer {
// is encapsulated within the SyncChange, which, once created, is immutable.
// Note: it is safe and cheap to pass these by value or make copies, as they do
// not create deep copies of their internal data.
-class SyncChange {
+class SYNC_EXPORT SyncChange {
public:
enum SyncChangeType {
ACTION_INVALID,
diff --git a/sync/api/sync_change_processor.h b/sync/api/sync_change_processor.h
index ad7c6d1..c2dad3f 100644
--- a/sync/api/sync_change_processor.h
+++ b/sync/api/sync_change_processor.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,6 +8,7 @@
#include <vector>
#include "sync/api/sync_error.h"
+#include "sync/base/sync_export.h"
namespace tracked_objects {
class Location;
@@ -20,7 +21,7 @@ class SyncChange;
typedef std::vector<SyncChange> SyncChangeList;
// An interface for services that handle receiving SyncChanges.
-class SyncChangeProcessor {
+class SYNC_EXPORT SyncChangeProcessor {
public:
SyncChangeProcessor();
virtual ~SyncChangeProcessor();
diff --git a/sync/api/sync_data.h b/sync/api/sync_data.h
index b88e0e7..c3404c3 100644
--- a/sync/api/sync_data.h
+++ b/sync/api/sync_data.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,6 +10,7 @@
#include <vector>
#include "base/basictypes.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/internal_api/public/util/immutable.h"
@@ -22,7 +23,7 @@ namespace syncer {
// A light-weight container for immutable sync data. Pass-by-value and storage
// in STL containers are supported and encouraged if helpful.
-class SyncData {
+class SYNC_EXPORT SyncData {
public:
// Creates an empty and invalid SyncData.
SyncData();
diff --git a/sync/api/sync_error.h b/sync/api/sync_error.h
index c674993..a3382b4 100644
--- a/sync/api/sync_error.h
+++ b/sync/api/sync_error.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,7 @@
#include <string>
#include "base/memory/scoped_ptr.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
namespace tracked_objects {
@@ -22,7 +23,7 @@ namespace syncer {
// unrecoverable for the datatype creating them, and should only be used as
// such.
// This class is copy-friendly and thread-safe.
-class SyncError {
+class SYNC_EXPORT SyncError {
public:
// Default constructor refers to "no error", and IsSet() will return false.
SyncError();
diff --git a/sync/api/sync_error_factory.h b/sync/api/sync_error_factory.h
index 39fab50..9b306b7 100644
--- a/sync/api/sync_error_factory.h
+++ b/sync/api/sync_error_factory.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,10 +9,11 @@
#include "base/location.h"
#include "sync/api/sync_error.h"
+#include "sync/base/sync_export.h"
namespace syncer {
-class SyncErrorFactory {
+class SYNC_EXPORT SyncErrorFactory {
public:
SyncErrorFactory();
virtual ~SyncErrorFactory();
diff --git a/sync/api/sync_merge_result.h b/sync/api/sync_merge_result.h
index baa4eb4..4ffd474 100644
--- a/sync/api/sync_merge_result.h
+++ b/sync/api/sync_merge_result.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -6,6 +6,7 @@
#define SYNC_API_SYNC_MERGE_RESULT_H_
#include "sync/api/sync_error.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
namespace syncer {
@@ -17,7 +18,7 @@ namespace syncer {
// by the local SyncableService, all values correspond to the local state before
// and after merging, and the delta's applied to that state. Sync's change
// processor will create a separate merge result.
-class SyncMergeResult {
+class SYNC_EXPORT SyncMergeResult {
public:
// Initialize an empty merge result for model type |type|.
explicit SyncMergeResult(ModelType type);
diff --git a/sync/api/syncable_service.h b/sync/api/syncable_service.h
index 571c2e7..8d187fc 100644
--- a/sync/api/syncable_service.h
+++ b/sync/api/syncable_service.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -14,6 +14,7 @@
#include "sync/api/sync_data.h"
#include "sync/api/sync_error.h"
#include "sync/api/sync_merge_result.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
namespace syncer {
@@ -25,8 +26,9 @@ typedef std::vector<SyncData> SyncDataList;
// TODO(zea): remove SupportsWeakPtr in favor of having all SyncableService
// implementers provide a way of getting a weak pointer to themselves.
// See crbug.com/100114.
-class SyncableService : public SyncChangeProcessor,
- public base::SupportsWeakPtr<SyncableService> {
+class SYNC_EXPORT SyncableService
+ : public SyncChangeProcessor,
+ public base::SupportsWeakPtr<SyncableService> {
public:
// Informs the service to begin syncing the specified synced datatype |type|.
// The service should then merge |initial_sync_data| into it's local data,
diff --git a/sync/internal_api/DEPS b/sync/internal_api/DEPS
index ab23f90..394c49c 100644
--- a/sync/internal_api/DEPS
+++ b/sync/internal_api/DEPS
@@ -1,6 +1,7 @@
include_rules = [
"+googleurl",
"+net",
+ "+sync/base",
"+sync/engine",
"+sync/js",
"+sync/notifier",
diff --git a/sync/internal_api/public/base/invalidation.h b/sync/internal_api/public/base/invalidation.h
index f25304b..18afcab 100644
--- a/sync/internal_api/public/base/invalidation.h
+++ b/sync/internal_api/public/base/invalidation.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,6 +10,7 @@
#include "base/basictypes.h"
#include "base/memory/scoped_ptr.h"
#include "base/time.h"
+#include "sync/base/sync_export.h"
namespace base {
class DictionaryValue;
@@ -19,7 +20,7 @@ namespace syncer {
// Opaque class that represents a local ack handle. We don't reuse the
// invalidation ack handles to avoid unnecessary dependencies.
-class AckHandle {
+class SYNC_EXPORT AckHandle {
public:
static AckHandle CreateUnique();
static AckHandle InvalidAckHandle();
diff --git a/sync/internal_api/public/base/model_type.h b/sync/internal_api/public/base/model_type.h
index 327d980..5b9b92d 100644
--- a/sync/internal_api/public/base/model_type.h
+++ b/sync/internal_api/public/base/model_type.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -137,7 +137,7 @@ bool ShouldMaintainPosition(ModelType model_type);
// These are the user-selectable data types. Note that some of these share a
// preference flag, so not all of them are individually user-selectable.
-ModelTypeSet UserTypes();
+SYNC_EXPORT ModelTypeSet UserTypes();
// This is the subset of UserTypes() that can be encrypted.
ModelTypeSet EncryptableUserTypes();
@@ -152,12 +152,12 @@ ModelTypeSet EncryptableUserTypes();
// - Their contents are not encrypted automatically.
// - They support custom update application and conflict resolution logic.
// - All change processing occurs on the sync thread (GROUP_PASSIVE).
-ModelTypeSet ControlTypes();
+SYNC_EXPORT ModelTypeSet ControlTypes();
// Returns true if this is a control type.
//
// See comment above for more information on what makes these types special.
-bool IsControlType(ModelType model_type);
+SYNC_EXPORT bool IsControlType(ModelType model_type);
// Determine a model type from the field number of its associated
// EntitySpecifics field. Returns UNSPECIFIED if the field number is
diff --git a/sync/internal_api/public/base_node.h b/sync/internal_api/public/base_node.h
index b9c363d..8afbeaa 100644
--- a/sync/internal_api/public/base_node.h
+++ b/sync/internal_api/public/base_node.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -13,6 +13,7 @@
#include "base/memory/scoped_ptr.h"
#include "base/time.h"
#include "googleurl/src/gurl.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/protocol/sync.pb.h"
@@ -54,7 +55,7 @@ static const int64 kInvalidId = 0;
// transaction is necessary to create a BaseNode or any of its children.
// Unlike syncable::Entry, a sync API BaseNode is identified primarily by its
// int64 metahandle, which we call an ID here.
-class BaseNode {
+class SYNC_EXPORT BaseNode {
public:
// Enumerates the possible outcomes of trying to initialize a sync node.
enum InitByLookupResult {
diff --git a/sync/internal_api/public/base_transaction.h b/sync/internal_api/public/base_transaction.h
index 7a2ba37..2f4fa3c 100644
--- a/sync/internal_api/public/base_transaction.h
+++ b/sync/internal_api/public/base_transaction.h
@@ -1,13 +1,13 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SYNC_INTERNAL_API_PUBLIC_BASE_TRANSACTION_H_
#define SYNC_INTERNAL_API_PUBLIC_BASE_TRANSACTION_H_
-#include "sync/internal_api/public/user_share.h"
-
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
+#include "sync/internal_api/public/user_share.h"
#include "sync/util/cryptographer.h"
namespace syncer {
@@ -24,7 +24,7 @@ class Directory;
// syncable, and are used in a similar way. Unlike syncable::BaseTransaction,
// whose construction requires an explicit syncable::Directory, a sync
// API BaseTransaction is created from a UserShare object.
-class BaseTransaction {
+class SYNC_EXPORT BaseTransaction {
public:
// Provide access to the underlying syncable objects from BaseNode.
virtual syncable::BaseTransaction* GetWrappedTrans() const = 0;
diff --git a/sync/internal_api/public/change_record.h b/sync/internal_api/public/change_record.h
index 876e450..d7dc587 100644
--- a/sync/internal_api/public/change_record.h
+++ b/sync/internal_api/public/change_record.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,7 @@
#include "base/basictypes.h"
#include "base/memory/linked_ptr.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/util/immutable.h"
#include "sync/protocol/password_specifics.pb.h"
#include "sync/protocol/sync.pb.h"
@@ -21,7 +22,7 @@ namespace syncer {
// TODO(zea): One day get passwords playing nicely with the rest of encryption
// and get rid of this.
-class ExtraPasswordChangeRecordData {
+class SYNC_EXPORT ExtraPasswordChangeRecordData {
public:
ExtraPasswordChangeRecordData();
explicit ExtraPasswordChangeRecordData(
diff --git a/sync/internal_api/public/data_type_association_stats.h b/sync/internal_api/public/data_type_association_stats.h
index f83eddd..344624a 100644
--- a/sync/internal_api/public/data_type_association_stats.h
+++ b/sync/internal_api/public/data_type_association_stats.h
@@ -1,16 +1,17 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SYNC_INTERNAL_API_PUBLIC_DATA_TYPE_ASSOCIATION_STATS_H_
#define SYNC_INTERNAL_API_PUBLIC_DATA_TYPE_ASSOCIATION_STATS_H_
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
namespace syncer {
// Container for datatype association results.
-struct DataTypeAssociationStats {
+struct SYNC_EXPORT DataTypeAssociationStats {
DataTypeAssociationStats();
~DataTypeAssociationStats();
diff --git a/sync/internal_api/public/http_bridge.h b/sync/internal_api/public/http_bridge.h
index 40cf6e7..880c588 100644
--- a/sync/internal_api/public/http_bridge.h
+++ b/sync/internal_api/public/http_bridge.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -17,6 +17,7 @@
#include "net/url_request/url_fetcher_delegate.h"
#include "net/url_request/url_request_context.h"
#include "net/url_request/url_request_context_getter.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/http_post_provider_factory.h"
#include "sync/internal_api/public/http_post_provider_interface.h"
@@ -203,7 +204,7 @@ class HttpBridge : public base::RefCountedThreadSafe<HttpBridge>,
DISALLOW_COPY_AND_ASSIGN(HttpBridge);
};
-class HttpBridgeFactory : public HttpPostProviderFactory {
+class SYNC_EXPORT HttpBridgeFactory : public HttpPostProviderFactory {
public:
HttpBridgeFactory(
net::URLRequestContextGetter* baseline_context_getter,
diff --git a/sync/internal_api/public/http_post_provider_factory.h b/sync/internal_api/public/http_post_provider_factory.h
index dfb87a3..e6d6cb0 100644
--- a/sync/internal_api/public/http_post_provider_factory.h
+++ b/sync/internal_api/public/http_post_provider_factory.h
@@ -1,10 +1,12 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SYNC_INTERNAL_API_PUBLIC_HTTP_POST_PROVIDER_FACTORY_H_
#define SYNC_INTERNAL_API_PUBLIC_HTTP_POST_PROVIDER_FACTORY_H_
+#include "sync/base/sync_export.h"
+
namespace syncer {
class HttpPostProviderInterface;
@@ -13,7 +15,7 @@ class HttpPostProviderInterface;
// implementations and dependencies.
// A factory instance itself should be owned by whomever uses it to create
// HttpPostProviders.
-class HttpPostProviderFactory {
+class SYNC_EXPORT HttpPostProviderFactory {
public:
virtual ~HttpPostProviderFactory() {}
diff --git a/sync/internal_api/public/internal_components_factory.h b/sync/internal_api/public/internal_components_factory.h
index 4830ce1..4b31781 100644
--- a/sync/internal_api/public/internal_components_factory.h
+++ b/sync/internal_api/public/internal_components_factory.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
@@ -13,6 +13,7 @@
#include <vector>
#include "base/file_path.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/engine/model_safe_worker.h"
namespace syncer {
@@ -35,7 +36,7 @@ class Directory;
class DirectoryBackingStore;
}
-class InternalComponentsFactory {
+class SYNC_EXPORT InternalComponentsFactory {
public:
enum EncryptionMethod {
ENCRYPTION_LEGACY,
diff --git a/sync/internal_api/public/internal_components_factory_impl.h b/sync/internal_api/public/internal_components_factory_impl.h
index 1b64d0b..66b8baa 100644
--- a/sync/internal_api/public/internal_components_factory_impl.h
+++ b/sync/internal_api/public/internal_components_factory_impl.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
@@ -8,11 +8,13 @@
#ifndef SYNC_INTERNAL_API_PUBLIC_INTERNAL_COMPONENTS_FACTORY_IMPL_H_
#define SYNC_INTERNAL_API_PUBLIC_INTERNAL_COMPONENTS_FACTORY_IMPL_H_
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/internal_components_factory.h"
namespace syncer {
-class InternalComponentsFactoryImpl : public InternalComponentsFactory {
+class SYNC_EXPORT InternalComponentsFactoryImpl
+ : public InternalComponentsFactory {
public:
InternalComponentsFactoryImpl(const Switches& switches);
virtual ~InternalComponentsFactoryImpl();
diff --git a/sync/internal_api/public/read_node.h b/sync/internal_api/public/read_node.h
index 78d67cc..50e7639 100644
--- a/sync/internal_api/public/read_node.h
+++ b/sync/internal_api/public/read_node.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,7 @@
#include "base/basictypes.h"
#include "base/compiler_specific.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/internal_api/public/base_node.h"
@@ -16,7 +17,7 @@ namespace syncer {
// ReadNode wraps a syncable::Entry to provide the functionality of a
// read-only BaseNode.
-class ReadNode : public BaseNode {
+class SYNC_EXPORT ReadNode : public BaseNode {
public:
// Create an unpopulated ReadNode on the given transaction. Call some flavor
// of Init to populate the ReadNode with a database entry.
diff --git a/sync/internal_api/public/read_transaction.h b/sync/internal_api/public/read_transaction.h
index 6619bb0..02e2633 100644
--- a/sync/internal_api/public/read_transaction.h
+++ b/sync/internal_api/public/read_transaction.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -6,6 +6,7 @@
#define SYNC_INTERNAL_API_PUBLIC_READ_TRANSACTION_H_
#include "base/compiler_specific.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base_transaction.h"
namespace tracked_objects {
@@ -18,7 +19,7 @@ struct UserShare;
// Sync API's ReadTransaction is a read-only BaseTransaction. It wraps
// a syncable::ReadTransaction.
-class ReadTransaction : public BaseTransaction {
+class SYNC_EXPORT ReadTransaction : public BaseTransaction {
public:
// Start a new read-only transaction on the specified repository.
ReadTransaction(const tracked_objects::Location& from_here,
diff --git a/sync/internal_api/public/sessions/model_neutral_state.h b/sync/internal_api/public/sessions/model_neutral_state.h
index 7541462..e61e995 100644
--- a/sync/internal_api/public/sessions/model_neutral_state.h
+++ b/sync/internal_api/public/sessions/model_neutral_state.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -6,6 +6,7 @@
#define SYNC_SESSIONS_MODEL_NEUTRAL_STATE_H
#include "base/basictypes.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/util/syncer_error.h"
#include "sync/protocol/sync.pb.h"
#include "sync/protocol/sync_protocol_error.h"
@@ -17,7 +18,7 @@ namespace sessions {
// components of the global grouping can internally implement finer grained
// scope control, but the top level entity is still a singleton with respect to
// model types.
-struct ModelNeutralState {
+struct SYNC_EXPORT ModelNeutralState {
ModelNeutralState();
~ModelNeutralState();
diff --git a/sync/internal_api/public/sessions/sync_session_snapshot.h b/sync/internal_api/public/sessions/sync_session_snapshot.h
index 8252419..25195a7 100644
--- a/sync/internal_api/public/sessions/sync_session_snapshot.h
+++ b/sync/internal_api/public/sessions/sync_session_snapshot.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,7 @@
#include "base/basictypes.h"
#include "base/time.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/internal_api/public/base/progress_marker_map.h"
#include "sync/internal_api/public/sessions/model_neutral_state.h"
@@ -26,7 +27,7 @@ namespace sessions {
// TODO(zea): if copying this all over the place starts getting expensive,
// consider passing around immutable references instead of values.
// Default copy and assign welcome.
-class SyncSessionSnapshot {
+class SYNC_EXPORT SyncSessionSnapshot {
public:
SyncSessionSnapshot();
SyncSessionSnapshot(
diff --git a/sync/internal_api/public/sessions/sync_source_info.h b/sync/internal_api/public/sessions/sync_source_info.h
index f1f0920..f41727b 100644
--- a/sync/internal_api/public/sessions/sync_source_info.h
+++ b/sync/internal_api/public/sessions/sync_source_info.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -6,6 +6,7 @@
#define SYNC_INTERNAL_API_PUBLIC_SESSIONS_SYNC_SOURCE_INFO_H_
#include "base/basictypes.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/internal_api/public/base/model_type_invalidation_map.h"
#include "sync/protocol/sync.pb.h"
@@ -20,7 +21,7 @@ namespace sessions {
// A container for the source of a sync session. This includes the update
// source, the datatypes triggering the sync session, and possible session
// specific payloads which should be sent to the server.
-struct SyncSourceInfo {
+struct SYNC_EXPORT SyncSourceInfo {
SyncSourceInfo();
explicit SyncSourceInfo(const ModelTypeInvalidationMap& t);
SyncSourceInfo(
diff --git a/sync/internal_api/public/sync_encryption_handler.h b/sync/internal_api/public/sync_encryption_handler.h
index d7be069..e4df223 100644
--- a/sync/internal_api/public/sync_encryption_handler.h
+++ b/sync/internal_api/public/sync_encryption_handler.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,6 +8,7 @@
#include <string>
#include "base/time.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
namespace sync_pb {
@@ -50,11 +51,11 @@ enum BootstrapTokenType {
// and keeps the nigori node up to date.
// Implementations of this class must be assumed to be non-thread-safe. All
// methods must be invoked on the sync thread.
-class SyncEncryptionHandler {
+class SYNC_EXPORT SyncEncryptionHandler {
public:
// All Observer methods are done synchronously from within a transaction and
// on the sync thread.
- class Observer {
+ class SYNC_EXPORT Observer {
public:
Observer();
diff --git a/sync/internal_api/public/sync_manager.h b/sync/internal_api/public/sync_manager.h
index b26bd4f..9746928 100644
--- a/sync/internal_api/public/sync_manager.h
+++ b/sync/internal_api/public/sync_manager.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -14,6 +14,7 @@
#include "base/memory/ref_counted.h"
#include "base/task_runner.h"
#include "base/threading/thread_checker.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/internal_api/public/change_record.h"
#include "sync/internal_api/public/configure_reason.h"
@@ -72,12 +73,12 @@ struct SyncCredentials {
//
// Unless stated otherwise, all methods of SyncManager should be called on the
// same thread.
-class SyncManager {
+class SYNC_EXPORT SyncManager {
public:
// An interface the embedding application implements to be notified
// on change events. Note that these methods may be called on *any*
// thread.
- class ChangeDelegate {
+ class SYNC_EXPORT ChangeDelegate {
public:
// Notify the delegate that changes have been applied to the sync model.
//
@@ -163,7 +164,7 @@ class SyncManager {
// notifications from the SyncManager. Register an observer via
// SyncManager::AddObserver. All methods are called only on the
// sync thread.
- class Observer {
+ class SYNC_EXPORT Observer {
public:
// A round-trip sync-cycle took place and the syncer has resolved any
// conflicts that may have arisen.
diff --git a/sync/internal_api/public/sync_manager_factory.h b/sync/internal_api/public/sync_manager_factory.h
index 9f566c2..12fa52f 100644
--- a/sync/internal_api/public/sync_manager_factory.h
+++ b/sync/internal_api/public/sync_manager_factory.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,13 +8,14 @@
#include <string>
#include "base/memory/scoped_ptr.h"
+#include "sync/base/sync_export.h"
namespace syncer {
class SyncManager;
// Helper class to allow dependency injection of the SyncManager.
-class SyncManagerFactory {
+class SYNC_EXPORT SyncManagerFactory {
public:
SyncManagerFactory();
virtual ~SyncManagerFactory();
diff --git a/sync/internal_api/public/util/sync_string_conversions.h b/sync/internal_api/public/util/sync_string_conversions.h
index 1e83c73..0b33a7d 100644
--- a/sync/internal_api/public/util/sync_string_conversions.h
+++ b/sync/internal_api/public/util/sync_string_conversions.h
@@ -1,22 +1,23 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SYNC_INTERNAL_API_PUBLIC_UTIL_SYNC_STRING_CONVERSIONS_H_
#define SYNC_INTERNAL_API_PUBLIC_UTIL_SYNC_STRING_CONVERSIONS_H_
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/sync_encryption_handler.h"
#include "sync/internal_api/public/sync_manager.h"
namespace syncer {
-const char* ConnectionStatusToString(ConnectionStatus status);
+SYNC_EXPORT const char* ConnectionStatusToString(ConnectionStatus status);
// Returns the string representation of a PassphraseRequiredReason value.
-const char* PassphraseRequiredReasonToString(
+SYNC_EXPORT const char* PassphraseRequiredReasonToString(
PassphraseRequiredReason reason);
-const char* PassphraseTypeToString(PassphraseType type);
+SYNC_EXPORT const char* PassphraseTypeToString(PassphraseType type);
const char* BootstrapTokenTypeToString(BootstrapTokenType type);
}
diff --git a/sync/internal_api/public/util/syncer_error.h b/sync/internal_api/public/util/syncer_error.h
index 4e70dc1..f3ee9ee 100644
--- a/sync/internal_api/public/util/syncer_error.h
+++ b/sync/internal_api/public/util/syncer_error.h
@@ -1,10 +1,12 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SYNC_INTERNAL_API_PUBLIC_UTIL_SYNCER_ERROR_H_
#define SYNC_INTERNAL_API_PUBLIC_UTIL_SYNCER_ERROR_H_
+#include "sync/base/sync_export.h"
+
namespace syncer {
// This enum describes all the ways a SyncerCommand can fail.
@@ -41,7 +43,7 @@ enum SyncerError {
SYNCER_OK
};
-const char * GetSyncerErrorString(SyncerError);
+SYNC_EXPORT const char* GetSyncerErrorString(SyncerError);
// Helper to check that |error| is set to something (not UNSET) and is not
// SYNCER_OK.
diff --git a/sync/internal_api/public/util/weak_handle.h b/sync/internal_api/public/util/weak_handle.h
index 2e49910..bac7c37 100644
--- a/sync/internal_api/public/util/weak_handle.h
+++ b/sync/internal_api/public/util/weak_handle.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -125,7 +125,7 @@ class WeakHandleCoreBase {
// WeakHandleCore<T> contains all the logic for WeakHandle<T>.
template <typename T>
class WeakHandleCore
- : public WeakHandleCoreBase,
+ : public NON_EXPORTED_BASE(WeakHandleCoreBase),
public base::RefCountedThreadSafe<WeakHandleCore<T> > {
public:
// Must be called on |ptr|'s owner thread, which is assumed to be
diff --git a/sync/internal_api/public/write_node.h b/sync/internal_api/public/write_node.h
index b2299f6..3d843a0 100644
--- a/sync/internal_api/public/write_node.h
+++ b/sync/internal_api/public/write_node.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,6 +10,7 @@
#include "base/basictypes.h"
#include "base/compiler_specific.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/internal_api/public/base_node.h"
@@ -39,7 +40,7 @@ class MutableEntry;
// WriteNode extends BaseNode to add mutation, and wraps
// syncable::MutableEntry. A WriteTransaction is needed to create a WriteNode.
-class WriteNode : public BaseNode {
+class SYNC_EXPORT WriteNode : public BaseNode {
public:
enum InitUniqueByCreationResult {
INIT_SUCCESS,
diff --git a/sync/internal_api/public/write_transaction.h b/sync/internal_api/public/write_transaction.h
index 8c11570..9008b4f 100644
--- a/sync/internal_api/public/write_transaction.h
+++ b/sync/internal_api/public/write_transaction.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -7,6 +7,7 @@
#include "base/basictypes.h"
#include "base/compiler_specific.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base_transaction.h"
namespace tracked_objects {
@@ -25,7 +26,7 @@ class WriteTransaction;
//
// NOTE: Only a single model type can be mutated for a given
// WriteTransaction.
-class WriteTransaction : public BaseTransaction {
+class SYNC_EXPORT WriteTransaction : public BaseTransaction {
public:
// Start a new read/write transaction.
WriteTransaction(const tracked_objects::Location& from_here,
diff --git a/sync/js/DEPS b/sync/js/DEPS
index 22a89b2..aae40c0 100644
--- a/sync/js/DEPS
+++ b/sync/js/DEPS
@@ -1,4 +1,5 @@
include_rules = [
+ "+sync/base",
"+sync/internal_api/public/util",
"+sync/util",
]
diff --git a/sync/js/js_arg_list.h b/sync/js/js_arg_list.h
index 0762c56..72793e9 100644
--- a/sync/js/js_arg_list.h
+++ b/sync/js/js_arg_list.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,13 +10,14 @@
#include <string>
#include "base/values.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/util/immutable.h"
namespace syncer {
// A thin wrapper around Immutable<ListValue>. Used for passing
// around argument lists to different threads.
-class JsArgList {
+class SYNC_EXPORT JsArgList {
public:
// Uses an empty argument list.
JsArgList();
diff --git a/sync/js/js_controller.h b/sync/js/js_controller.h
index c2a5475..08432bf 100644
--- a/sync/js/js_controller.h
+++ b/sync/js/js_controller.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,8 @@
#include <string>
+#include "sync/base/sync_export.h"
+
namespace syncer {
class JsArgList;
@@ -19,7 +21,7 @@ template <typename T> class WeakHandle;
// An interface for objects that JsEventHandlers directly interact
// with. JsEventHandlers can add themselves to receive events and
// also send messages which will eventually reach the backend.
-class JsController {
+class SYNC_EXPORT JsController {
public:
// Adds an event handler which will start receiving JS events (not
// immediately, so this can be called in the handler's constructor).
diff --git a/sync/js/js_event_details.h b/sync/js/js_event_details.h
index 512264b..9ca36db 100644
--- a/sync/js/js_event_details.h
+++ b/sync/js/js_event_details.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,13 +10,14 @@
#include <string>
#include "base/values.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/util/immutable.h"
namespace syncer {
// A thin wrapper around Immutable<DictionaryValue>. Used for passing
// around event details to different threads.
-class JsEventDetails {
+class SYNC_EXPORT JsEventDetails {
public:
// Uses an empty dictionary.
JsEventDetails();
diff --git a/sync/js/js_event_handler.h b/sync/js/js_event_handler.h
index 04eadca..2e2213ef 100644
--- a/sync/js/js_event_handler.h
+++ b/sync/js/js_event_handler.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,13 +9,15 @@
#include <string>
+#include "sync/base/sync_export.h"
+
namespace syncer {
class JsEventDetails;
// An interface for objects that handle Javascript events (e.g.,
// WebUIs).
-class JsEventHandler {
+class SYNC_EXPORT JsEventHandler {
public:
virtual void HandleJsEvent(
const std::string& name, const JsEventDetails& details) = 0;
diff --git a/sync/js/sync_js_controller.h b/sync/js/sync_js_controller.h
index b6f1707..0e259f8 100644
--- a/sync/js/sync_js_controller.h
+++ b/sync/js/sync_js_controller.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -12,6 +12,7 @@
#include "base/compiler_specific.h"
#include "base/memory/weak_ptr.h"
#include "base/observer_list.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/util/weak_handle.h"
#include "sync/js/js_arg_list.h"
#include "sync/js/js_controller.h"
@@ -23,7 +24,7 @@ class JsBackend;
// A class that mediates between the sync JsEventHandlers and the sync
// JsBackend.
-class SyncJsController
+class SYNC_EXPORT SyncJsController
: public JsController, public JsEventHandler,
public base::SupportsWeakPtr<SyncJsController> {
public:
diff --git a/sync/notifier/DEPS b/sync/notifier/DEPS
index 202fdc9..e02d522 100644
--- a/sync/notifier/DEPS
+++ b/sync/notifier/DEPS
@@ -6,6 +6,7 @@ include_rules = [
"+net/url_request/url_request_context.h",
"+net/url_request/url_request_test_util.h",
+ "+sync/base",
"+sync/internal_api/public/base",
"+sync/internal_api/public/util",
"+sync/protocol/service_constants.h",
diff --git a/sync/notifier/invalidation_state_tracker.h b/sync/notifier/invalidation_state_tracker.h
index 2f26895..ba769e9 100644
--- a/sync/notifier/invalidation_state_tracker.h
+++ b/sync/notifier/invalidation_state_tracker.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
@@ -19,6 +19,7 @@
#include "base/callback_forward.h"
#include "base/memory/ref_counted.h"
#include "google/cacheinvalidation/include/types.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/invalidation.h"
#include "sync/notifier/invalidation_util.h"
@@ -28,7 +29,7 @@ class TaskRunner;
namespace syncer {
-struct InvalidationState {
+struct SYNC_EXPORT InvalidationState {
InvalidationState();
~InvalidationState();
diff --git a/sync/notifier/invalidation_util.h b/sync/notifier/invalidation_util.h
index 0a5c1c7..414e3fe 100644
--- a/sync/notifier/invalidation_util.h
+++ b/sync/notifier/invalidation_util.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
@@ -12,6 +12,7 @@
#include <string>
#include "base/memory/scoped_ptr.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
namespace base {
@@ -30,15 +31,15 @@ void PrintTo(const invalidation::ObjectId& id, std::ostream* os);
namespace syncer {
-struct ObjectIdLessThan {
+struct SYNC_EXPORT ObjectIdLessThan {
bool operator()(const invalidation::ObjectId& lhs,
const invalidation::ObjectId& rhs) const;
};
typedef std::set<invalidation::ObjectId, ObjectIdLessThan> ObjectIdSet;
-bool RealModelTypeToObjectId(ModelType model_type,
- invalidation::ObjectId* object_id);
+SYNC_EXPORT bool RealModelTypeToObjectId(ModelType model_type,
+ invalidation::ObjectId* object_id);
bool ObjectIdToRealModelType(const invalidation::ObjectId& object_id,
ModelType* model_type);
@@ -52,7 +53,7 @@ bool ObjectIdFromValue(const base::DictionaryValue& value,
std::string ObjectIdToString(const invalidation::ObjectId& object_id);
-ObjectIdSet ModelTypeSetToObjectIdSet(ModelTypeSet models);
+SYNC_EXPORT_PRIVATE ObjectIdSet ModelTypeSetToObjectIdSet(ModelTypeSet models);
ModelTypeSet ObjectIdSetToModelTypeSet(const ObjectIdSet& ids);
std::string InvalidationToString(
diff --git a/sync/notifier/invalidator_factory.h b/sync/notifier/invalidator_factory.h
index 4a33c6b..f7bd3e0 100644
--- a/sync/notifier/invalidator_factory.h
+++ b/sync/notifier/invalidator_factory.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,7 @@
#include "base/memory/weak_ptr.h"
#include "jingle/notifier/base/notifier_options.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/util/weak_handle.h"
#include "sync/notifier/invalidation_state_tracker.h"
@@ -18,7 +19,7 @@ class Invalidator;
// Class to instantiate various implementations of the Invalidator
// interface.
-class InvalidatorFactory {
+class SYNC_EXPORT InvalidatorFactory {
public:
// |client_info| is a string identifying the client, e.g. a user
// agent string. |invalidation_state_tracker| may be NULL (for
diff --git a/sync/notifier/invalidator_registrar.h b/sync/notifier/invalidator_registrar.h
index 6100973b..ce227db 100644
--- a/sync/notifier/invalidator_registrar.h
+++ b/sync/notifier/invalidator_registrar.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,6 +10,7 @@
#include "base/basictypes.h"
#include "base/observer_list.h"
#include "base/threading/thread_checker.h"
+#include "sync/base/sync_export.h"
#include "sync/notifier/invalidation_handler.h"
#include "sync/notifier/invalidation_util.h"
#include "sync/notifier/object_id_invalidation_map.h"
@@ -24,7 +25,7 @@ namespace syncer {
// keep track of registered handlers and which object ID registrations are
// associated with which handlers, so implementors can just reuse the logic
// here to dispatch invalidations and other interesting notifications.
-class InvalidatorRegistrar {
+class SYNC_EXPORT InvalidatorRegistrar {
public:
InvalidatorRegistrar();
diff --git a/sync/notifier/invalidator_state.h b/sync/notifier/invalidator_state.h
index f06da6f..80b607b 100644
--- a/sync/notifier/invalidator_state.h
+++ b/sync/notifier/invalidator_state.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -6,6 +6,7 @@
#define SYNC_NOTIFIER_INVALIDATOR_STATE_H_
#include "jingle/notifier/listener/push_client_observer.h"
+#include "sync/base/sync_export.h"
namespace syncer {
@@ -23,7 +24,7 @@ enum InvalidatorState {
INVALIDATIONS_ENABLED
};
-const char* InvalidatorStateToString(InvalidatorState state);
+SYNC_EXPORT const char* InvalidatorStateToString(InvalidatorState state);
InvalidatorState FromNotifierReason(
notifier::NotificationsDisabledReason reason);
diff --git a/sync/notifier/object_id_invalidation_map.h b/sync/notifier/object_id_invalidation_map.h
index 03569d8..4a7c017 100644
--- a/sync/notifier/object_id_invalidation_map.h
+++ b/sync/notifier/object_id_invalidation_map.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -10,6 +10,7 @@
#include "base/memory/scoped_ptr.h"
#include "google/cacheinvalidation/include/types.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/invalidation.h"
#include "sync/internal_api/public/base/model_type_invalidation_map.h"
#include "sync/notifier/invalidation_util.h"
@@ -27,7 +28,7 @@ typedef std::map<invalidation::ObjectId,
// Converts between ObjectIdInvalidationMaps and ObjectIdSets.
ObjectIdSet ObjectIdInvalidationMapToSet(
const ObjectIdInvalidationMap& invalidation_map);
-ObjectIdInvalidationMap ObjectIdSetToInvalidationMap(
+SYNC_EXPORT ObjectIdInvalidationMap ObjectIdSetToInvalidationMap(
const ObjectIdSet& ids, const std::string& payload);
bool ObjectIdInvalidationMapEquals(
@@ -43,8 +44,9 @@ bool ObjectIdInvalidationMapFromValue(const base::ListValue& value,
// Converts between ObjectIdInvalidationMaps and ModelTypeInvalidationMaps.
ModelTypeInvalidationMap ObjectIdInvalidationMapToModelTypeInvalidationMap(
const ObjectIdInvalidationMap& invalidation_map);
-ObjectIdInvalidationMap ModelTypeInvalidationMapToObjectIdInvalidationMap(
- const ModelTypeInvalidationMap& invalidation_map);
+SYNC_EXPORT ObjectIdInvalidationMap
+ ModelTypeInvalidationMapToObjectIdInvalidationMap(
+ const ModelTypeInvalidationMap& invalidation_map);
} // namespace syncer
diff --git a/sync/notifier/p2p_invalidator.h b/sync/notifier/p2p_invalidator.h
index bbcbcf5..9f3df2c 100644
--- a/sync/notifier/p2p_invalidator.h
+++ b/sync/notifier/p2p_invalidator.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
@@ -17,6 +17,7 @@
#include "base/observer_list.h"
#include "base/threading/thread_checker.h"
#include "jingle/notifier/listener/push_client_observer.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
#include "sync/notifier/invalidator.h"
#include "sync/notifier/invalidator_registrar.h"
@@ -29,7 +30,7 @@ class PushClient;
namespace syncer {
// The channel to use for sync notifications.
-extern const char kSyncP2PNotificationChannel[];
+SYNC_EXPORT_PRIVATE extern const char kSyncP2PNotificationChannel[];
// The intended recipient(s) of a P2P notification.
enum P2PNotificationTarget {
@@ -49,7 +50,7 @@ P2PNotificationTarget P2PNotificationTargetFromString(
// Helper notification data class that can be serialized to and
// deserialized from a string.
-class P2PNotificationData {
+class SYNC_EXPORT_PRIVATE P2PNotificationData {
public:
// Initializes with an empty sender ID, target set to NOTIFY_SELF,
// and empty changed types.
diff --git a/sync/protocol/DEPS b/sync/protocol/DEPS
index 00a61b9..f8f9de5 100644
--- a/sync/protocol/DEPS
+++ b/sync/protocol/DEPS
@@ -1,3 +1,4 @@
include_rules = [
+ "+sync/base",
"+sync/internal_api/public/base",
]
diff --git a/sync/protocol/proto_enum_conversions.h b/sync/protocol/proto_enum_conversions.h
index e3f9315..81b86f8 100644
--- a/sync/protocol/proto_enum_conversions.h
+++ b/sync/protocol/proto_enum_conversions.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -7,6 +7,7 @@
// Keep this file in sync with the .proto files in this directory.
+#include "sync/base/sync_export.h"
#include "sync/protocol/client_debug_info.pb.h"
#include "sync/protocol/session_specifics.pb.h"
#include "sync/protocol/sync.pb.h"
@@ -29,7 +30,7 @@ const char* GetPageTransitionRedirectTypeString(
sync_pb::SyncEnums::PageTransitionRedirectType
redirect_type);
-const char* GetUpdatesSourceString(
+SYNC_EXPORT const char* GetUpdatesSourceString(
sync_pb::GetUpdatesCallerInfo::GetUpdatesSource updates_source);
const char* GetResponseTypeString(
diff --git a/sync/protocol/proto_value_conversions.h b/sync/protocol/proto_value_conversions.h
index 4dded17..cbfd447 100644
--- a/sync/protocol/proto_value_conversions.h
+++ b/sync/protocol/proto_value_conversions.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -7,6 +7,8 @@
#ifndef SYNC_PROTOCOL_PROTO_VALUE_CONVERSIONS_H_
#define SYNC_PROTOCOL_PROTO_VALUE_CONVERSIONS_H_
+#include "sync/base/sync_export.h"
+
namespace base {
class DictionaryValue;
}
@@ -144,7 +146,7 @@ base::DictionaryValue* ExtensionSettingSpecificsToValue(
base::DictionaryValue* ExtensionSpecificsToValue(
const sync_pb::ExtensionSpecifics& extension_specifics);
-base::DictionaryValue* HistoryDeleteDirectiveSpecificsToValue(
+SYNC_EXPORT base::DictionaryValue* HistoryDeleteDirectiveSpecificsToValue(
const sync_pb::HistoryDeleteDirectiveSpecifics&
history_delete_directive_specifics);
diff --git a/sync/protocol/sync_protocol_error.h b/sync/protocol/sync_protocol_error.h
index f23659b..8339d03 100644
--- a/sync/protocol/sync_protocol_error.h
+++ b/sync/protocol/sync_protocol_error.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SYNC_PROTOCOL_SYNC_PROTOCOL_ERROR_H_
@@ -7,6 +7,7 @@
#include <string>
#include "base/values.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/base/model_type.h"
namespace syncer{
@@ -62,7 +63,7 @@ enum ClientAction {
UNKNOWN_ACTION
};
-struct SyncProtocolError {
+struct SYNC_EXPORT SyncProtocolError {
SyncProtocolErrorType error_type;
std::string error_description;
std::string url;
@@ -73,8 +74,8 @@ struct SyncProtocolError {
DictionaryValue* ToValue() const;
};
-const char* GetSyncErrorTypeString(SyncProtocolErrorType type);
-const char* GetClientActionString(ClientAction action);
+SYNC_EXPORT const char* GetSyncErrorTypeString(SyncProtocolErrorType type);
+SYNC_EXPORT const char* GetClientActionString(ClientAction action);
} // namespace syncer
#endif // SYNC_PROTOCOL_SYNC_PROTOCOL_ERROR_H_
diff --git a/sync/syncable/DEPS b/sync/syncable/DEPS
index 37279ad..0ea6610 100644
--- a/sync/syncable/DEPS
+++ b/sync/syncable/DEPS
@@ -1,6 +1,7 @@
include_rules = [
"+net/base/escape.h",
"+sql",
+ "+sync/base",
"+sync/internal_api/public/base",
"+sync/internal_api/public/engine",
"+sync/internal_api/public/util",
diff --git a/sync/syncable/directory.h b/sync/syncable/directory.h
index 4247530..2b0bd3c4 100644
--- a/sync/syncable/directory.h
+++ b/sync/syncable/directory.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -11,6 +11,7 @@
#include "base/file_util.h"
#include "base/gtest_prod_util.h"
+#include "sync/base/sync_export.h"
#include "sync/internal_api/public/util/report_unrecoverable_error_function.h"
#include "sync/internal_api/public/util/weak_handle.h"
#include "sync/syncable/dir_open_result.h"
@@ -128,7 +129,7 @@ enum InvariantCheckLevel {
FULL_DB_VERIFICATION = 2 // Check every entry. This can be expensive.
};
-class Directory {
+class SYNC_EXPORT Directory {
friend class BaseTransaction;
friend class Entry;
friend class MutableEntry;
diff --git a/sync/syncable/write_transaction.h b/sync/syncable/write_transaction.h
index 6a36963..875f6ec 100644
--- a/sync/syncable/write_transaction.h
+++ b/sync/syncable/write_transaction.h
@@ -1,17 +1,18 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef SYNC_SYNCABLE_WRITE_TRANSACTION_H_
#define SYNC_SYNCABLE_WRITE_TRANSACTION_H_
+#include "sync/base/sync_export.h"
#include "sync/syncable/base_transaction.h"
#include "sync/syncable/entry_kernel.h"
namespace syncer {
namespace syncable {
-extern const int64 kInvalidTransactionVersion;
+SYNC_EXPORT extern const int64 kInvalidTransactionVersion;
// Locks db in constructor, unlocks in destructor.
class WriteTransaction : public BaseTransaction {
diff --git a/sync/util/DEPS b/sync/util/DEPS
index 3bef302..13d7bf1 100644
--- a/sync/util/DEPS
+++ b/sync/util/DEPS
@@ -1,5 +1,6 @@
include_rules = [
"+crypto",
+ "+sync/base",
"+sync/internal_api/public/base",
"+sync/internal_api/public/util",
"+sync/protocol",
diff --git a/sync/util/cryptographer.h b/sync/util/cryptographer.h
index 1a3ee3a..384ba78 100644
--- a/sync/util/cryptographer.h
+++ b/sync/util/cryptographer.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -11,6 +11,7 @@
#include "base/gtest_prod_util.h"
#include "base/memory/linked_ptr.h"
#include "base/memory/scoped_ptr.h"
+#include "sync/base/sync_export.h"
#include "sync/protocol/encryption.pb.h"
#include "sync/util/nigori.h"
@@ -46,7 +47,7 @@ struct KeyParams {
// CanDecrypt should be used to verify whether the Cryptographer can decrypt
// that node. If it cannot, then the application of that update should be
// delayed until after it can be decrypted.
-class Cryptographer {
+class SYNC_EXPORT Cryptographer {
public:
// Does not take ownership of |encryptor|.
explicit Cryptographer(Encryptor* encryptor);
diff --git a/sync/util/extensions_activity_monitor.h b/sync/util/extensions_activity_monitor.h
index f333b7b..699f7b5 100644
--- a/sync/util/extensions_activity_monitor.h
+++ b/sync/util/extensions_activity_monitor.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,7 @@
#include <string>
#include "base/basictypes.h"
+#include "sync/base/sync_export.h"
namespace syncer {
@@ -17,10 +18,10 @@ namespace syncer {
// acknowledged it (successful commit response).
//
// All abstract methods are called from the sync thread.
-class ExtensionsActivityMonitor {
+class SYNC_EXPORT ExtensionsActivityMonitor {
public:
// A data record of activity performed by extension |extension_id|.
- struct Record {
+ struct SYNC_EXPORT Record {
Record();
~Record();
diff --git a/sync/util/get_session_name.h b/sync/util/get_session_name.h
index 3b8dd5a..4a0600d 100644
--- a/sync/util/get_session_name.h
+++ b/sync/util/get_session_name.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -9,6 +9,7 @@
#include "base/callback_forward.h"
#include "base/memory/ref_counted.h"
+#include "sync/base/sync_export.h"
namespace base {
class TaskRunner;
@@ -16,7 +17,7 @@ class TaskRunner;
namespace syncer {
-void GetSessionName(
+SYNC_EXPORT void GetSessionName(
const scoped_refptr<base::TaskRunner>& task_runner,
const base::Callback<void(const std::string&)>& done_callback);
diff --git a/sync/util/nigori.h b/sync/util/nigori.h
index a33f0b6..cd67bf9 100644
--- a/sync/util/nigori.h
+++ b/sync/util/nigori.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,6 +8,7 @@
#include <string>
#include "base/memory/scoped_ptr.h"
+#include "sync/base/sync_export.h"
namespace crypto {
class SymmetricKey;
@@ -24,7 +25,7 @@ namespace syncer {
// and retrieve the secret.
//
// TODO: Link to doc.
-class Nigori {
+class SYNC_EXPORT Nigori {
public:
enum Type {
Password = 1,
diff --git a/sync/util/time.h b/sync/util/time.h
index 8ba72a3..2b0b245 100644
--- a/sync/util/time.h
+++ b/sync/util/time.h
@@ -1,4 +1,4 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
@@ -11,17 +11,18 @@
#include "base/basictypes.h"
#include "base/time.h"
+#include "sync/base/sync_export.h"
namespace syncer {
// Converts a time object to the format used in sync protobufs (ms
// since the Unix epoch).
-int64 TimeToProtoTime(const base::Time& t);
+SYNC_EXPORT int64 TimeToProtoTime(const base::Time& t);
// Converts a time field from sync protobufs to a time object.
base::Time ProtoTimeToTime(int64 proto_t);
-std::string GetTimeDebugString(const base::Time& t);
+SYNC_EXPORT std::string GetTimeDebugString(const base::Time& t);
} // namespace syncer