-
Notifications
You must be signed in to change notification settings - Fork 117
FALCON-2183 Extension Builder changes to support new user extensions #298
Conversation
* @return A graph comprising of the whole dag details of the extension. | ||
* @throws FalconException | ||
*/ | ||
String getExtensionDescription(final String extensionName) throws FalconException; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The Description can be retrieved by the CLI by just doing a 'cat' on the README. So, we won't need this.
* @param extensionProperties Properties supplied will be validated. | ||
* @throws FalconException | ||
*/ | ||
void validateExtension(final String extensionName, final Properties extensionProperties) throws FalconException; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The second argument should be an InputStream.
* @return Default template for the given extension. | ||
* @throws FalconException | ||
*/ | ||
String getDefaultTemplate(final String extensionName) throws FalconException; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm.. This again, we thought we can just do a 'cat' of the template from the CLI. As long the extension packages it (which will be validated during register), CLI can access it.
* @param extensionConfigStream Properties supplied will be validated. | ||
* @throws FalconException | ||
*/ | ||
void validateExtension(final String extensionName, final InputStream extensionConfigStream) throws FalconException; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apologies for not pointing this out earlier, validateExtension is misleading. We are actually validating the configuration supplied by the user. Please change accordingly.
|
||
@Override | ||
public void validateExtension(String extensionName, InputStream extensionConfigStream) throws FalconException { | ||
throw new UnsupportedException("Not yet Implemented"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apologies again for not pointing out earlier. Why unsupported? This could invoke org.apache.falcon.extensions.Extension#validateProperties. isn't it?
👍 . Looks good. Will merge once the build is fixed. |
* @return List of the feed names along with the schema that the extension has generated if any. | ||
* @throws FalconException | ||
*/ | ||
List<Pair<String, Schema>> getOutputSchemas(final String extensionName) throws FalconException; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are we assuming that all feeds used in extensions must have schema by having getOutputSchema() in interface.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would return whatever the extension has defined for the output feeds, would be empty list if not defined any .
Looks good, except one comment on getOutputSchema() . |
Author: sandeep <sandysmdl@gmail.com> Reviewers: @pallavi-rao Closes apache#298 from sandeepSamudrala/FALCON-2183 and squashes the following commits: 8aacd75 [sandeep] FALCON-2183 Incorporated review comments f3d7268 [sandeep] FALCON-2183 Incorporated review comments 11e7b3f [sandeep] FALCON-2183 Extension Builder changes to support new user extensions 250cc46 [sandeep] Merge branch 'master' of https://github.com/apache/falcon d0393e9 [sandeep] Merge branch 'master' of https://github.com/apache/falcon a178805 [sandeep] Merge branch 'master' of https://github.com/apache/falcon d6dc8bf [sandeep] Merge branch 'master' of https://github.com/apache/falcon 1bb8d3c [sandeep] Merge branch 'master' of https://github.com/apache/falcon c065566 [sandeep] reverting last line changes made 1a4dcd2 [sandeep] rebased and resolved the conflicts from master 271318b [sandeep] FALCON-2097. Adding UT to the new method for getting next instance time with Delay. a94d4fe [sandeep] rebasing from master 9e68a57 [sandeep] FALCON-298. Feed update with replication delay creates holes
No description provided.