Loading...
Searching...
No Matches
BinaryNinja::Collaboration::RemoteProject Class Reference

Public Member Functions

 RemoteProject (BNRemoteProject *remoteProject)
Ref< Project > GetCoreProject ()
bool IsOpen ()
bool Open (ProgressFunction progress={})
void Close ()
Ref< Remote > GetRemote ()
std::string GetUrl ()
int64_t GetCreated ()
int64_t GetLastModified ()
std::string GetId ()
std::string GetName ()
void SetName (const std::string &name)
std::string GetDescription ()
void SetDescription (const std::string &description)
uint64_t GetReceivedFileCount ()
uint64_t GetReceivedFolderCount ()
bool HasPulledFiles ()
bool HasPulledGroupPermissions ()
bool HasPulledUserPermissions ()
bool IsAdmin ()
std::vector< Ref< RemoteFile > > GetFiles ()
std::vector< Ref< RemoteFolder > > GetFolders ()
Ref< RemoteFile > GetFileById (const std::string &id)
Ref< RemoteFile > GetFileByName (const std::string &name)
void PullFiles (ProgressFunction progress={})
void PullFolders (ProgressFunction progress={})
Ref< RemoteFile > CreateFile (const std::string &filename, std::vector< uint8_t > &contents, const std::string &name, const std::string &description, Ref< RemoteFolder > folder, BNRemoteFileType type, ProgressFunction progress={}, Ref< ProjectFile > coreFile=nullptr)
Ref< RemoteFolder > CreateFolder (const std::string &name, const std::string &description, Ref< RemoteFolder > parent, ProgressFunction progress={}, Ref< ProjectFolder > coreFolder=nullptr)
void PushFile (Ref< RemoteFile > file, const std::vector< std::pair< std::string, std::string > > &extraFields={})
void PushFolder (Ref< RemoteFolder > folder, const std::vector< std::pair< std::string, std::string > > &extraFields={})
void DeleteFolder (const Ref< RemoteFolder > folder)
void DeleteFile (const Ref< RemoteFile > file)
Ref< RemoteFolder > GetFolderById (const std::string &id)
std::vector< Ref< CollabPermission > > GetGroupPermissions ()
std::vector< Ref< CollabPermission > > GetUserPermissions ()
Ref< CollabPermission > GetPermissionById (const std::string &id)
void PullGroupPermissions (ProgressFunction progress={})
void PullUserPermissions (ProgressFunction progress={})
Ref< CollabPermission > CreateGroupPermission (int groupId, BNCollaborationPermissionLevel level, ProgressFunction progress={})
Ref< CollabPermission > CreateUserPermission (const std::string &userId, BNCollaborationPermissionLevel level, ProgressFunction progress={})
void PushPermission (Ref< CollabPermission > permission, const std::vector< std::pair< std::string, std::string > > &extraFields={})
void DeletePermission (Ref< CollabPermission > permission)
bool CanUserView (Ref< CollabUser > user)
bool CanUserEdit (Ref< CollabUser > user)
bool CanUserAdmin (Ref< CollabUser > user)
Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNRemoteProject, BNNewRemoteProjectReference, BNFreeRemoteProject >
 CoreRefCountObject ()
virtual ~CoreRefCountObject ()
BNRemoteProject * GetObject () const
void AddRef ()
void Release ()
void AddRefForRegistration ()
void ReleaseForRegistration ()
void AddRefForCallback ()
void ReleaseForCallback ()

Additional Inherited Members

Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNRemoteProject, BNNewRemoteProjectReference, BNFreeRemoteProject >
std::atomic< int > m_refs
bool m_registeredRef
BNRemoteProject * m_object

Constructor & Destructor Documentation

◆ RemoteProject()

RemoteProject::RemoteProject ( BNRemoteProject * remoteProject)

Member Function Documentation

◆ GetCoreProject()

Ref< Project > RemoteProject::GetCoreProject ( )

◆ IsOpen()

bool RemoteProject::IsOpen ( )

◆ Open()

bool RemoteProject::Open ( ProgressFunction progress = {})

◆ Close()

void RemoteProject::Close ( )

◆ GetRemote()

Ref< Remote > RemoteProject::GetRemote ( )

◆ GetUrl()

std::string RemoteProject::GetUrl ( )

◆ GetCreated()

int64_t RemoteProject::GetCreated ( )

◆ GetLastModified()

int64_t RemoteProject::GetLastModified ( )

◆ GetId()

std::string RemoteProject::GetId ( )

◆ GetName()

std::string RemoteProject::GetName ( )

◆ SetName()

void RemoteProject::SetName ( const std::string & name)

◆ GetDescription()

std::string RemoteProject::GetDescription ( )

◆ SetDescription()

void RemoteProject::SetDescription ( const std::string & description)

◆ GetReceivedFileCount()

uint64_t RemoteProject::GetReceivedFileCount ( )

◆ GetReceivedFolderCount()

uint64_t RemoteProject::GetReceivedFolderCount ( )

◆ HasPulledFiles()

bool RemoteProject::HasPulledFiles ( )

◆ HasPulledGroupPermissions()

bool RemoteProject::HasPulledGroupPermissions ( )

◆ HasPulledUserPermissions()

bool RemoteProject::HasPulledUserPermissions ( )

◆ IsAdmin()

bool RemoteProject::IsAdmin ( )

◆ GetFiles()

std::vector< Ref< RemoteFile > > RemoteProject::GetFiles ( )

◆ GetFolders()

std::vector< Ref< RemoteFolder > > RemoteProject::GetFolders ( )

◆ GetFileById()

Ref< RemoteFile > RemoteProject::GetFileById ( const std::string & id)

◆ GetFileByName()

Ref< RemoteFile > RemoteProject::GetFileByName ( const std::string & name)

◆ PullFiles()

void RemoteProject::PullFiles ( ProgressFunction progress = {})

◆ PullFolders()

void RemoteProject::PullFolders ( ProgressFunction progress = {})

◆ CreateFile()

Ref< RemoteFile > RemoteProject::CreateFile ( const std::string & filename,
std::vector< uint8_t > & contents,
const std::string & name,
const std::string & description,
Ref< RemoteFolder > folder,
BNRemoteFileType type,
ProgressFunction progress = {},
Ref< ProjectFile > coreFile = nullptr )

◆ CreateFolder()

Ref< RemoteFolder > RemoteProject::CreateFolder ( const std::string & name,
const std::string & description,
Ref< RemoteFolder > parent,
ProgressFunction progress = {},
Ref< ProjectFolder > coreFolder = nullptr )

◆ PushFile()

void RemoteProject::PushFile ( Ref< RemoteFile > file,
const std::vector< std::pair< std::string, std::string > > & extraFields = {} )

◆ PushFolder()

void RemoteProject::PushFolder ( Ref< RemoteFolder > folder,
const std::vector< std::pair< std::string, std::string > > & extraFields = {} )

◆ DeleteFolder()

void RemoteProject::DeleteFolder ( const Ref< RemoteFolder > folder)

◆ DeleteFile()

void RemoteProject::DeleteFile ( const Ref< RemoteFile > file)

◆ GetFolderById()

Ref< RemoteFolder > RemoteProject::GetFolderById ( const std::string & id)

◆ GetGroupPermissions()

std::vector< Ref< CollabPermission > > RemoteProject::GetGroupPermissions ( )

◆ GetUserPermissions()

std::vector< Ref< CollabPermission > > RemoteProject::GetUserPermissions ( )

◆ GetPermissionById()

Ref< CollabPermission > RemoteProject::GetPermissionById ( const std::string & id)

◆ PullGroupPermissions()

void RemoteProject::PullGroupPermissions ( ProgressFunction progress = {})

◆ PullUserPermissions()

void RemoteProject::PullUserPermissions ( ProgressFunction progress = {})

◆ CreateGroupPermission()

Ref< CollabPermission > RemoteProject::CreateGroupPermission ( int groupId,
BNCollaborationPermissionLevel level,
ProgressFunction progress = {} )

◆ CreateUserPermission()

Ref< CollabPermission > RemoteProject::CreateUserPermission ( const std::string & userId,
BNCollaborationPermissionLevel level,
ProgressFunction progress = {} )

◆ PushPermission()

void RemoteProject::PushPermission ( Ref< CollabPermission > permission,
const std::vector< std::pair< std::string, std::string > > & extraFields = {} )

◆ DeletePermission()

void RemoteProject::DeletePermission ( Ref< CollabPermission > permission)

◆ CanUserView()

bool RemoteProject::CanUserView ( Ref< CollabUser > user)

◆ CanUserEdit()

bool RemoteProject::CanUserEdit ( Ref< CollabUser > user)

◆ CanUserAdmin()

bool RemoteProject::CanUserAdmin ( Ref< CollabUser > user)