steid

@jamesgill /

1//! The application layer: use cases and the ports they depend on.
2//!
3//! Every use case takes an actor or a credential plus the ports it needs, and enforces
4//! the rules before any side effect. Nothing here knows about HTTP or Topcoat.
5
6pub mod archive;
7pub(crate) mod authz;
8pub mod blame;
9pub mod browse;
10pub mod claim;
11pub mod commit;
12pub mod config;
13pub mod diff;
14pub mod error;
15pub mod git;
16pub mod identity;
17pub mod login;
18pub mod port;
19pub mod profile;
20pub mod repo;
21pub mod search;
22pub mod session;
23pub mod summary;
24pub mod token;
25
26pub use archive::{ArchiveTarget, archive_repo, open_archive};
27pub use blame::{Blame, BlameCommit, BlameContent, BlameFile, BlameGroup, blame_file, parse_blame};
28pub use browse::{
29 Browsed, FileView, LOG_LIMIT, MAX_BLOB_BYTES, MAX_RAW_BYTES, RawFile, RefList, RefPage,
30 browse_repo, list_branches, list_refs, list_tags, read_raw_file, repo_log,
31};
32pub use claim::{OwnerSpec, claim_instance, is_claimed, sole_owner_handle};
33pub use commit::{
34 COMPARE_LOG_LIMIT, CommitPage, Compared, Comparison, compare_revisions, view_commit,
35};
36pub use config::{AppConfig, Secret};
37pub use diff::{Diff, DiffLine, FileChange, FileDiff, FileStat, LineKind, MAX_FILE_DIFF_LINES};
38pub use error::{Error, Result};
39pub use git::{GitClientHeaders, GitEndpoint, GitOperation, GitService, serve_git};
40pub use identity::{Identity, describe_identity};
41pub use login::login;
42pub use profile::{PublicProfile, update_profile, view_profile};
43pub use repo::{
44 NewRepo, RepoEdit, RepoSummary, RepoView, create_repo, delete_repo, list_repos, update_repo,
45 view_repo,
46};
47pub use search::{MAX_QUERY_BYTES, SEARCH_LIMIT, SearchFile, SearchResults, Searched, search_repo};
48pub use session::{SESSION_LIFETIME, end_session, record_session, resolve_actor, sweep_expired};
49pub use summary::{Licence, RepoFacts, repo_summary};
50pub use token::{
51 IssuedToken, TokenSummary, authenticate_token, issue_token, list_tokens, revoke_token,
52};