forked from facebook/react-native
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
iOS: Introduced ComponentDescriptorFactory to provide app specific co…
…mponent registry Summary: Each app has its own set of components to support, so this mechanism allows each of them to customize the set. Core library only provides the signature (.h file) without any impl. Reviewed By: shergin Differential Revision: D8065360 fbshipit-source-id: c123397afda678e84f1d1fa41a6393f25b2c15e1
- Loading branch information
1 parent
67ec849
commit 0afc70b
Showing
6 changed files
with
75 additions
and
9 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
23 changes: 23 additions & 0 deletions
23
ReactCommon/fabric/sample/SampleComponentDescriptorFactor.cpp
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
/** | ||
* Copyright (c) 2015-present, Facebook, Inc. | ||
* | ||
* This source code is licensed under the MIT license found in the | ||
* LICENSE file in the root directory of this source tree. | ||
*/ | ||
|
||
#include <fabric/uimanager/ComponentDescriptorFactory.h> | ||
#include <fabric/uimanager/ComponentDescriptorRegistry.h> | ||
|
||
namespace facebook { | ||
namespace react { | ||
|
||
/** | ||
* This is a sample implementation. Each app should provide its own. | ||
*/ | ||
SharedComponentDescriptorRegistry ComponentDescriptorFactory::buildRegistry() { | ||
auto registry = std::make_shared<ComponentDescriptorRegistry>(); | ||
return registry; | ||
} | ||
|
||
} // namespace react | ||
} // namespace facebook |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
/** | ||
* Copyright (c) 2015-present, Facebook, Inc. | ||
* | ||
* This source code is licensed under the MIT license found in the | ||
* LICENSE file in the root directory of this source tree. | ||
*/ | ||
|
||
#pragma once | ||
|
||
#include <memory> | ||
|
||
#include <fabric/core/ComponentDescriptor.h> | ||
|
||
#include "ComponentDescriptorRegistry.h" | ||
|
||
namespace facebook { | ||
namespace react { | ||
|
||
/** | ||
* A factory to provide hosting app specific set of ComponentDescriptor's. | ||
* Each app must provide an implementation of the static class method which | ||
* should register its specific set of supported components. | ||
*/ | ||
class ComponentDescriptorFactory { | ||
|
||
public: | ||
static SharedComponentDescriptorRegistry buildRegistry(); | ||
}; | ||
|
||
} // namespace react | ||
} // namespace facebook |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters