diff options
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 |