Package ghidra.framework.remote
Interface RemoteRepositoryServerHandle
- 
- All Superinterfaces:
 java.rmi.Remote,RepositoryServerHandle
public interface RemoteRepositoryServerHandle extends RepositoryServerHandle, java.rmi.Remote
RepositoryServerHandleprovides access to a remote repository server via RMI.Methods from
RepositoryServerHandlemust be re-declared here so they may be properly marshalled for remote invocation via RMI. This became neccessary with an OpenJDK 11.0.6 change made toRemoteObjectInvocationHandler. 
- 
- 
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description booleananonymousAccessAllowed()booleancanSetPassword()Returns true if the user's password can be changed.voidconnected()Verify that server is alive and connected.RepositoryHandlecreateRepository(java.lang.String name)Create a new repository on the server.voiddeleteRepository(java.lang.String name)Delete a repository.java.lang.String[]getAllUsers()Returns a list of all known users.longgetPasswordExpiration()Returns the amount of time in milliseconds until the user's password will expire.RepositoryHandlegetRepository(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.StringgetUser()Returns current user for which this handle belongs.booleanisReadOnly()booleansetPassword(char[] saltedSHA256PasswordHash)Set the password for the user. 
 - 
 
- 
- 
Method Detail
- 
anonymousAccessAllowed
boolean anonymousAccessAllowed() throws java.io.IOException- Specified by:
 anonymousAccessAllowedin interfaceRepositoryServerHandle- 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- Specified by:
 isReadOnlyin interfaceRepositoryServerHandle- 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
Description copied from interface:RepositoryServerHandleCreate a new repository on the server. The newly created RepositoryHandle will contain a unique project ID for the client.- Specified by:
 createRepositoryin interfaceRepositoryServerHandle- Parameters:
 name- repository name. This ID will be used to identify and maintain checkout data.- Returns:
 - handle to new repository.
 - Throws:
 DuplicateFileExceptionUserAccessExceptionjava.io.IOException- if an IO error occurs
 
- 
getRepository
RepositoryHandle getRepository(java.lang.String name) throws java.io.IOException
Description copied from interface:RepositoryServerHandleGet a handle to an existing repository.- Specified by:
 getRepositoryin interfaceRepositoryServerHandle- 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.IOExceptionDescription copied from interface:RepositoryServerHandleDelete a repository.- Specified by:
 deleteRepositoryin interfaceRepositoryServerHandle- 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.IOExceptionDescription copied from interface:RepositoryServerHandleReturns a list of all repository names which are accessable by the current user.- Specified by:
 getRepositoryNamesin interfaceRepositoryServerHandle- Throws:
 java.io.IOException- if an IO error occurs
 
- 
getUser
java.lang.String getUser() throws java.io.IOExceptionDescription copied from interface:RepositoryServerHandleReturns current user for which this handle belongs.- Specified by:
 getUserin interfaceRepositoryServerHandle- Throws:
 java.io.IOException- if an IO error occurs
 
- 
getAllUsers
java.lang.String[] getAllUsers() throws java.io.IOExceptionDescription copied from interface:RepositoryServerHandleReturns a list of all known users.- Specified by:
 getAllUsersin interfaceRepositoryServerHandle- Throws:
 java.io.IOException- if an IO error occurs
 
- 
canSetPassword
boolean canSetPassword() throws java.io.IOExceptionDescription copied from interface:RepositoryServerHandleReturns true if the user's password can be changed.- Specified by:
 canSetPasswordin interfaceRepositoryServerHandle- Throws:
 java.io.IOException- if an IO error occurs
 
- 
getPasswordExpiration
long getPasswordExpiration() throws java.io.IOExceptionDescription copied from interface:RepositoryServerHandleReturns the amount of time in milliseconds until the user's password will expire.- Specified by:
 getPasswordExpirationin interfaceRepositoryServerHandle- 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.IOExceptionDescription copied from interface:RepositoryServerHandleSet the password for the user.- Specified by:
 setPasswordin interfaceRepositoryServerHandle- 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.IOExceptionDescription copied from interface:RepositoryServerHandleVerify that server is alive and connected.- Specified by:
 connectedin interfaceRepositoryServerHandle- Throws:
 java.io.IOException- if connection verification fails
 
 - 
 
 -