Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Enhancement] Add framework clients to all OMASs #7857

Closed
mandy-chessell opened this issue Sep 7, 2023 · 6 comments
Closed

[Enhancement] Add framework clients to all OMASs #7857

mandy-chessell opened this issue Sep 7, 2023 · 6 comments
Assignees
Labels
enhancement New feature or request pinned Keep open (do not time out) triage New bug/issue which needs checking & assigning

Comments

@mandy-chessell
Copy link
Contributor

Existing/related issue?

No response

Please describe the new behavior that that will improve Egeria

Each Open Metadata Access Service (OMAS) Client should have two framework clients plus one or more specialized clients. This enhancement is to ensure that the two framework clients are added to all OMASs.

The OMASs are implemented under module open-metadata-implementation/access-services. They each should have a client module. For example, the Community Profile OMAS has a module called community-profile-client under open-metadata-implementation/access-services/community-profile.

The source code for Community Profile OMAS's client has a number of clients. The two framework clients are called ConnectedAssetClient and MetadataSourceClient:

Screenshot 2023-09-07 at 08 40 26

This enhancement is to check each OMAS and make sure it has a client module with at least these two clients in place.

Alternatives

None

Any Further Information?

You will need to add dependencies to the updated client module's build.gradle file. I think this is what you need:

    implementation project(':open-metadata-implementation:framework-services:ocf-metadata-management:ocf-metadata-api')
    implementation project(':open-metadata-implementation:framework-services:ocf-metadata-management:ocf-metadata-client')
    implementation project(':open-metadata-implementation:framework-services:gaf-metadata-management:gaf-metadata-api')
    implementation project(':open-metadata-implementation:framework-services:gaf-metadata-management:gaf-metadata-client')

In addition, each client needs to have the correct serviceURLMarker value set. This tells the server which module is calling the framework services so it performs the correct security check for the calling module.

Screenshot 2023-09-07 at 09 00 40

It is OK to copy the two standard clients from Community Profile OMAS into another OMAS. Then update the serviceURLMarker value in each client to be the correct value for the receiving OMAS. This is its name in lower case with a dash in between. For example:

  • Community Profile OMAS is community-profile
  • Asset Catalog OMAS is asset-catalog etc

Some OMASs are also missing their client module so you may have to add that too. You can copy the structure of the client module from Community profile - remembering to update the package name to match the OMAS. Then add the new client module name to settings.gradle in the top level directory.

Would you be prepared to be assigned this issue to work on?

No response

@mandy-chessell mandy-chessell added enhancement New feature or request triage New bug/issue which needs checking & assigning labels Sep 7, 2023
Copy link

This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 20 days if no further activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the no-issue-activity Issues automatically marked as stale because they have not had recent activity. label Nov 10, 2023
@mandy-chessell mandy-chessell added pinned Keep open (do not time out) and removed no-issue-activity Issues automatically marked as stale because they have not had recent activity. labels Nov 21, 2023
@odttlnt
Copy link
Contributor

odttlnt commented Nov 27, 2023

Hi @mandy-chessell ,
Sorry for being late with this issue, I just started this (while on vacation :) ).
The MetadataSourceClient class from community profile extends a CommunityProfileBaseClient and which implements MetadataSourceInterface. Both of these are unique to community profile.
So if we are get this client on to other OMAS, we would have to have implementations of these two also

@mandy-chessell
Copy link
Contributor Author

@odttlnt Apologies Sachin - it should be OpenMetadataStoreClient

@odttlnt
Copy link
Contributor

odttlnt commented Nov 27, 2023

Ok, so OpenMetadataStoreClient and ConnectedAssetClient , right ?

@odttlnt
Copy link
Contributor

odttlnt commented Dec 12, 2023

@mandy-chessell I have created a PR for the code changes. Please feel free to do the review and provide your feedback

@mandy-chessell
Copy link
Contributor Author

This function is complete

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request pinned Keep open (do not time out) triage New bug/issue which needs checking & assigning
Projects
None yet
Development

No branches or pull requests

2 participants