notification callback handling
In many cases, the WC library will scan a working copy and make changes.
More...
|
Data Structures |
struct | svn_wc_notify_t |
| Structure used in the svn_wc_notify_func2_t function. More...
|
Typedefs |
typedef void(* | svn_wc_notify_func2_t )(void *baton, const svn_wc_notify_t *notify, apr_pool_t *pool) |
| Notify the world that notify->action has happened to notify->path.
|
typedef void(* | svn_wc_notify_func_t )(void *baton, const char *path, svn_wc_notify_action_t action, svn_node_kind_t kind, const char *mime_type, svn_wc_notify_state_t content_state, svn_wc_notify_state_t prop_state, svn_revnum_t revision) |
| Similar to svn_wc_notify_func2_t , but takes the information as arguments instead of struct fields.
|
Enumerations |
enum | svn_wc_notify_action_t {
svn_wc_notify_add = 0,
svn_wc_notify_copy,
svn_wc_notify_delete,
svn_wc_notify_restore,
svn_wc_notify_revert,
svn_wc_notify_failed_revert,
svn_wc_notify_resolved,
svn_wc_notify_skip,
svn_wc_notify_update_delete,
svn_wc_notify_update_add,
svn_wc_notify_update_update,
svn_wc_notify_update_completed,
svn_wc_notify_update_external,
svn_wc_notify_status_completed,
svn_wc_notify_status_external,
svn_wc_notify_commit_modified,
svn_wc_notify_commit_added,
svn_wc_notify_commit_deleted,
svn_wc_notify_commit_replaced,
svn_wc_notify_commit_postfix_txdelta,
svn_wc_notify_blame_revision,
svn_wc_notify_locked,
svn_wc_notify_unlocked,
svn_wc_notify_failed_lock,
svn_wc_notify_failed_unlock
} |
| The type of action occurring. More...
|
enum | svn_wc_notify_state_t {
svn_wc_notify_state_inapplicable = 0,
svn_wc_notify_state_unknown,
svn_wc_notify_state_unchanged,
svn_wc_notify_state_missing,
svn_wc_notify_state_obstructed,
svn_wc_notify_state_changed,
svn_wc_notify_state_merged,
svn_wc_notify_state_conflicted
} |
| The type of notification that is occurring. More...
|
enum | svn_wc_notify_lock_state_t {
svn_wc_notify_lock_state_inapplicable = 0,
svn_wc_notify_lock_state_unknown,
svn_wc_notify_lock_state_unchanged,
svn_wc_notify_lock_state_locked,
svn_wc_notify_lock_state_unlocked
} |
| What happened to a lock during an operation. More...
|
Functions |
svn_wc_notify_t * | svn_wc_create_notify (const char *path, svn_wc_notify_action_t action, apr_pool_t *pool) |
| Allocate an svn_wc_notify_t structure in pool, initialize and return it.
|
svn_wc_notify_t * | svn_wc_dup_notify (const svn_wc_notify_t *notify, apr_pool_t *pool) |
| Return a deep copy of notify, allocated in pool.
|
Detailed Description
In many cases, the WC library will scan a working copy and make changes.
The caller usually wants to know when each of these changes has been made, so that it can display some kind of notification to the user.
These notifications have a standard callback function type, which takes the path of the file that was affected, and a caller- supplied baton.
Note that the callback is a 'void' return -- this is a simple reporting mechanism, rather than an opportunity for the caller to alter the operation of the WC library.
Note also that some of the actions are used across several different Subversion commands. For example, the update actions are also used for checkouts, switches, and merges.
Typedef Documentation
Notify the world that notify->action has happened to notify->path.
Recommendation: callers of svn_wc_notify_func2_t
should avoid invoking it multiple times on the same path within a given operation, and implementations should not bother checking for such duplicate calls. For example, in an update, the caller should not invoke the notify func on receiving a prop change and then again on receiving a text change. Instead, wait until all changes have been received, and then invoke the notify func once (from within an svn_delta_editor_t's
close_file(), for example), passing the appropriate notify->content_state and notify->prop_state flags.
- Since:
- New in 1.2.
Definition at line 798 of file svn_wc.h.
Similar to svn_wc_notify_func2_t
, but takes the information as arguments instead of struct fields.
- Deprecated:
- Provided for backward compatibility with the 1.1 API.
Definition at line 808 of file svn_wc.h.
Enumeration Type Documentation
The type of action occurring.
- Enumerator:
-
svn_wc_notify_add |
Adding a path to revision control.
|
svn_wc_notify_copy |
Copying a versioned path.
|
svn_wc_notify_delete |
Deleting a versioned path.
|
svn_wc_notify_restore |
Restoring a missing path from the pristine text-base.
|
svn_wc_notify_revert |
Reverting a modified path.
|
svn_wc_notify_failed_revert |
A revert operation has failed.
|
svn_wc_notify_resolved |
Resolving a conflict.
|
svn_wc_notify_skip |
Skipping a path.
|
svn_wc_notify_update_delete |
Got a delete in an update.
|
svn_wc_notify_update_add |
Got an add in an update.
|
svn_wc_notify_update_update |
Got any other action in an update.
|
svn_wc_notify_update_completed |
The last notification in an update (including updates of externals).
|
svn_wc_notify_update_external |
Updating an external module.
|
svn_wc_notify_status_completed |
The last notification in a status (including status on externals).
|
svn_wc_notify_status_external |
Running status on an external module.
|
svn_wc_notify_commit_modified |
Committing a modification.
|
svn_wc_notify_commit_added |
Committing an addition.
|
svn_wc_notify_commit_deleted |
Committing a deletion.
|
svn_wc_notify_commit_replaced |
Committing a replacement.
|
svn_wc_notify_commit_postfix_txdelta |
Transmitting post-fix text-delta data for a file.
|
svn_wc_notify_blame_revision |
Processed a single revision's blame.
|
svn_wc_notify_locked |
Locking a path.
- Since:
- New in 1.2.
|
svn_wc_notify_unlocked |
Unlocking a path.
- Since:
- New in 1.2.
|
svn_wc_notify_failed_lock |
Failed to lock a path.
- Since:
- New in 1.2.
|
svn_wc_notify_failed_unlock |
Failed to unlock a path.
- Since:
- New in 1.2.
|
Definition at line 575 of file svn_wc.h.
What happened to a lock during an operation.
- Since:
- New in 1.2.
- Enumerator:
-
svn_wc_notify_lock_state_unchanged |
The lock wasn't changed.
|
svn_wc_notify_lock_state_locked |
The item was locked.
|
svn_wc_notify_lock_state_unlocked |
The item was unlocked.
|
Definition at line 687 of file svn_wc.h.
The type of notification that is occurring.
- Enumerator:
-
svn_wc_notify_state_unknown |
Notifier doesn't know or isn't saying.
|
svn_wc_notify_state_unchanged |
The state did not change.
|
svn_wc_notify_state_missing |
The item wasn't present.
|
svn_wc_notify_state_obstructed |
An unversioned item obstructed work.
|
svn_wc_notify_state_changed |
Pristine state was modified.
|
svn_wc_notify_state_merged |
Modified state had mods merged in.
|
svn_wc_notify_state_conflicted |
Modified state got conflicting mods.
|
Definition at line 655 of file svn_wc.h.
Function Documentation
Allocate an svn_wc_notify_t
structure in pool, initialize and return it.
Set the path
field of the created struct to path, and action
to action. Set all other fields to their _unknown
, NULL
or invalid value, respectively.
- Since:
- New in 1.2.
Return a deep copy of notify, allocated in pool.
- Since:
- New in 1.2.