Package ghidra.framework.remote
Interface RepositoryServerHandle
-
- All Known Subinterfaces:
RemoteRepositoryServerHandle
public interface RepositoryServerHandle
RepositoryServerHandle
provides access to a repository server.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
anonymousAccessAllowed()
boolean
canSetPassword()
Returns true if the user's password can be changed.void
connected()
Verify that server is alive and connected.RepositoryHandle
createRepository(java.lang.String name)
Create a new repository on the server.void
deleteRepository(java.lang.String name)
Delete a repository.java.lang.String[]
getAllUsers()
Returns a list of all known users.long
getPasswordExpiration()
Returns the amount of time in milliseconds until the user's password will expire.RepositoryHandle
getRepository(java.lang.String name)
Get a handle to an existing repository.java.lang.String[]
getRepositoryNames()
Returns a list of all repository names which are accessable by the current user.java.lang.String
getUser()
Returns current user for which this handle belongs.boolean
isReadOnly()
boolean
setPassword(char[] saltedSHA256PasswordHash)
Set the password for the user.
-
-
-
Method Detail
-
anonymousAccessAllowed
boolean anonymousAccessAllowed() throws java.io.IOException
- Returns:
- true if server allows anonymous access. Individual repositories must grant anonymous access separately.
- Throws:
java.io.IOException
- if an IO error occurs
-
isReadOnly
boolean isReadOnly() throws java.io.IOException
- Returns:
- true if user has restricted read-only access to server (e.g., anonymous user)
- Throws:
java.io.IOException
- if an IO error occurs
-
createRepository
RepositoryHandle createRepository(java.lang.String name) throws java.io.IOException
Create a new repository on the server. The newly created RepositoryHandle will contain a unique project ID for the client.- Parameters:
name
- repository name. This ID will be used to identify and maintain checkout data.- Returns:
- handle to new repository.
- Throws:
DuplicateFileException
UserAccessException
java.io.IOException
- if an IO error occurs
-
getRepository
RepositoryHandle getRepository(java.lang.String name) throws java.io.IOException
Get a handle to an existing repository.- Parameters:
name
- repository name.- Returns:
- repository handle or null if repository does not exist.
- Throws:
UserAccessException
- if user does not have permission to access repositoryjava.io.IOException
- if an IO error occurs
-
deleteRepository
void deleteRepository(java.lang.String name) throws java.io.IOException
Delete a repository.- Parameters:
name
- repository name.- Throws:
UserAccessException
- if user does not have permission to delete repositoryjava.io.IOException
- if an IO error occurs
-
getRepositoryNames
java.lang.String[] getRepositoryNames() throws java.io.IOException
Returns a list of all repository names which are accessable by the current user.- Throws:
java.io.IOException
- if an IO error occurs
-
getUser
java.lang.String getUser() throws java.io.IOException
Returns current user for which this handle belongs.- Throws:
java.io.IOException
- if an IO error occurs
-
getAllUsers
java.lang.String[] getAllUsers() throws java.io.IOException
Returns a list of all known users.- Throws:
java.io.IOException
- if an IO error occurs
-
canSetPassword
boolean canSetPassword() throws java.io.IOException
Returns true if the user's password can be changed.- Throws:
java.io.IOException
- if an IO error occurs
-
getPasswordExpiration
long getPasswordExpiration() throws java.io.IOException
Returns the amount of time in milliseconds until the user's password will expire.- Returns:
- time until expiration or -1 if it will not expire
- Throws:
java.io.IOException
- if an IO error occurs
-
setPassword
boolean setPassword(char[] saltedSHA256PasswordHash) throws java.io.IOException
Set the password for the user.- Parameters:
saltedSHA256PasswordHash
- SHA256 salted password hash- Returns:
- true if password changed
- Throws:
java.io.IOException
- if an IO error occurs- See Also:
HashUtilities.getSaltedHash("SHA-256", char[])
-
connected
void connected() throws java.io.IOException
Verify that server is alive and connected.- Throws:
java.io.IOException
- if connection verification fails
-
-