NAME
Prophet::ForeignReplica
DESCRIPTION
This abstract baseclass implements the helpers you need to be able to easily sync a prophet replica with a "second class citizen" replica which can't exactly reconstruct changesets, doesn't use uuids to track records and so on.
METHODS
record_changes Prophet::ChangeSet
Integrate all changes in this changeset.
prompt_for_login
Interactively prompt the user for a username and an authentication secret (usually a password).
Named parameters:
uri
username
password
username_prompt
secret_prompt
To use the default prompts, which ask for a username and password, pass in uri
and (optionally) username
. Either prompt will be skipped if a value is passed in to begin, making this suitable for use in a login loop that prompts for values and then tests that they work for authentication, looping around if they don't.
You can also override the default prompts by passing in subroutines for username_prompt
and/or secret_prompt
. These subroutines return strings to be printed and are called like this:
username_prompt( uri )
secret_prompt( uri, username )
Where uri
and username
are the args that are passed in under those names (if any). You don't need to use them; use a closure if you want something else.