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

Changes to Command keys and Name #4

Merged
merged 4 commits into from
Feb 3, 2014
Merged

Conversation

robhruska
Copy link
Member

This contains breaking changes, but is only a minor version update.

  • Lifted a bunch of unnecessary restrictions on Command key values.
  • Command constructors now take strings instead of GroupKeys since there isn't any validation that needs to happen on the keys.
  • Command constructors require a new group key (first argument) that's used to help group and name the Command. We were previously using the Assembly name for this, which was unpredictable.
    • Group keys will often be the "owner" of the command, i.e. the squad that maintains the code. Examples: recruit-client, recruit-internal, monolith-client-athlete, monolith-client-team.
    • Some commands (e.g. mongo/sql wrappers) may have groups like common, common-mongo, or platform.
    • These changes mean Command names will now look like recruit-client.GetRecruitTeam and monolith-client-athlete.GetAthletes.
    • Group keys that contain . (dot) characters will have them converted to dashes to maintain a "two-level" namespaced Name.
  • Command Names are cached internally to avoid rebuilding them for every Command instance.

Deployment Considerations

  • This needs to go into hudl and hudl-recruit at the same time. We'll want to rebuild the hudl-recruit DLLs and copy them into hudl to get the updated recruit commands.

They were unnecessary and getting in tne way.
- Command constructors now require a group. Group is used as part of the
  command's identifier (name = group + classname).
- Command constructors take strings instead of GroupKeys. Internally,
  GroupKeys are still used in case we want to intern/cache strings.
- Command.Name no longer uses the assembly.
robhruska added a commit that referenced this pull request Feb 3, 2014
@robhruska robhruska merged commit 0d4ef29 into master Feb 3, 2014
@robhruska robhruska deleted the Platform_GroupKeyChanges branch February 3, 2014 16:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant