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

Lab 6 - CRUD puppy with interface #537

Open
patrickmarabeas opened this issue Jul 4, 2019 · 0 comments
Open

Lab 6 - CRUD puppy with interface #537

patrickmarabeas opened this issue Jul 4, 2019 · 0 comments
Assignees

Comments

@patrickmarabeas
Copy link
Collaborator

Lab 6 - CRUD puppy with interface

  • Create an executable go program in directory 06_puppy/USERNAME (see hints)
  • Implement a Puppy struct containing ID, Breed, Colour, Value
  • Create Storer interface with crud methods for Puppy
  • Write a MapStore implementation of Storer backed by a map
  • Write a SyncStore implementation of Storer backed by a sync.Map
  • Keep all implementation files in the same folder and in package main
  • Test against the Storer interface and run in suite with both implementations
@patrickmarabeas patrickmarabeas self-assigned this Jul 4, 2019
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Jul 4, 2019
Adds the Puppy, Storer and MapStore type definitions. MapStore implements
the Storer interface and supplies a NewMapStore factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update will return the given Puppy struct if the uuid doesn't exist
- Destroy returns a bool dependent on uuid existing

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Jul 4, 2019
SyncStore implements the Storer interface and supplies a NewSyncStore
factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update will return the given Puppy struct if the uuid doesn't exist
- Destroy returns a bool dependent on uuid existing

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Jul 4, 2019
Adds the Puppy, Storer and MapStore type definitions. MapStore implements
the Storer interface and supplies a NewMapStore factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update will return the given Puppy struct if the uuid doesn't exist
- Destroy returns a bool dependent on uuid existing

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Jul 4, 2019
SyncStore implements the Storer interface and supplies a NewSyncStore
factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update will return the given Puppy struct if the uuid doesn't exist
- Destroy returns a bool dependent on uuid existing

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 19, 2019
Adds the Puppy, Storer and MapStore type definitions. MapStore implements
the Storer interface and supplies a NewMapStore factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 19, 2019
SyncStore implements the Storer interface and supplies a NewSyncStore
factory function.

- Uuid increment is handled internally by SyncStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 19, 2019
Adds the Puppy, Storer and MapStore type definitions. MapStore implements
the Storer interface and supplies a NewMapStore factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 19, 2019
SyncStore implements the Storer interface and supplies a NewSyncStore
factory function.

- Uuid increment is handled internally by SyncStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 19, 2019
Adds the Puppy, Storer and MapStore type definitions. MapStore implements
the Storer interface and supplies a NewMapStore factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 19, 2019
SyncStore implements the Storer interface and supplies a NewSyncStore
factory function.

- Uuid increment is handled internally by SyncStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 19, 2019
Adds the Puppy, Storer and MapStore type definitions. MapStore implements
the Storer interface and supplies a NewMapStore factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 19, 2019
SyncStore implements the Storer interface and supplies a NewSyncStore
factory function.

- Uuid increment is handled internally by SyncStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 25, 2019
Adds the Puppy, Storer and MapStore type definitions. MapStore implements
the Storer interface and supplies a NewMapStore factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 25, 2019
SyncStore implements the Storer interface and supplies a NewSyncStore
factory function.

- Uuid increment is handled internally by SyncStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 25, 2019
Adds the Puppy, Storer and MapStore type definitions. MapStore implements
the Storer interface and supplies a NewMapStore factory function.

- Uuid increment is handled internally by MapStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
patrickmarabeas added a commit to patrickmarabeas/go-course that referenced this issue Aug 25, 2019
SyncStore implements the Storer interface and supplies a NewSyncStore
factory function.

- Uuid increment is handled internally by SyncStore Create
- Read will return an empty Puppy struct if provided uuid doesn't exist
- Update returns a bool whether a matching identifier was modified
- Destroy returns a bool whether a matching identifier was modified

Lab 06 (anz-bank#537)
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 a pull request may close this issue.

1 participant