Console client
You can talk to a Hawk server from one of the console client products in the download page for Hawk. Using the product only requires unpacking the product and running the main executable within it. Alternatively, you could install the "Hawk CLI Feature" into your Eclipse instance and use these commands from the "Host OSGi Console" in the Console view.
Each Thrift API has its own set of commands.
Hawk
You can use the hawkHelp
command to list all the available commands.
Connecting to Hawk
Name |
Description |
hawkConnect <url> [username] [password] |
Connects to a Thrift endpoint (guesses the protocol from the URL) |
hawkDisconnect |
Disconnects from the current Thrift endpoint |
Managing Hawk indexer instances
Name |
Description |
hawkAddInstance <name> <backend> [minDelay] [maxDelay|0] |
Adds an instance with the provided name (if maxDelay = 0, periodic updates are disabled) |
hawkListBackends |
Lists the available Hawk backends |
hawkListInstances |
Lists the available Hawk instances |
hawkRemoveInstance <name> |
Removes an instance with the provided name, if it exists |
hawkSelectInstance <name> |
Selects the instance with the provided name |
hawkStartInstance <name> |
Starts the instance with the provided name |
hawkStopInstance <name> |
Stops the instance with the provided name |
hawkSyncInstance <name> [waitForSync:true|false] |
Requests an immediate sync on the instance with the provided name |
Name |
Description |
hawkListMetamodels |
Lists all registered metamodels in this instance |
hawkRegisterMetamodel <files...> |
Registers one or more metamodels |
hawkUnregisterMetamodel <uri> |
Unregisters the metamodel with the specified URI |
Managing version control repositories
Name |
Description |
hawkAddRepository <url> <type> [user] [pwd] |
Adds a repository |
hawkListFiles <url> [filepatterns...] |
Lists files within a repository |
hawkListRepositories |
Lists all registered metamodels in this instance |
hawkListRepositoryTypes |
Lists available repository types |
hawkRemoveRepository <url> |
Removes the repository with the specified URL |
hawkUpdateRepositoryCredentials <url> <user> <pwd> |
Changes the user/password used to monitor a repository |
Querying models
Name |
Description |
hawkGetModel <repo> [filepatterns...] |
Returns all the model elements of the specified files within the repo |
hawkGetRoots <repo> [filepatterns...] |
Returns only the root model elements of the specified files within the repo |
hawkListQueryLanguages |
Lists all available query languages |
hawkQuery <query> <language> [repo] [files] |
Queries the index |
hawkResolveProxies <ids...> |
Retrieves model elements by ID |
Managing derived attributes
Name |
Description |
hawkAddDerivedAttribute <mmURI> <mmType> <name> <type> <lang> <expr> [many|ordered|unique]* |
Adds a derived attribute |
hawkListDerivedAttributes |
Lists all available derived attributes |
hawkRemoveDerivedAttribute <mmURI> <mmType> <name> |
Removes a derived attribute, if it exists |
Managing indexed attributes
Name |
Description |
hawkAddIndexedAttribute <mmURI> <mmType> <name> |
Adds an indexed attribute |
hawkListIndexedAttributes |
Lists all available indexed attributes |
hawkRemoveIndexedAttribute <mmURI> <mmType> <name> |
Removes an indexed attribute, if it exists |
Watching over changes in remote models
Name |
Description |
hawkWatchModelChanges [default|temporary|durable] [client ID] [repo] [files...] |
Watches an Artemis message queue with detected model changes |
Users
The Users API has its own set of commands, which can be listed through usersHelp
:
Name |
Description |
usersHelp |
Lists all the available commands for Users |
usersConnect <url> [username] [password] |
Connects to a Thrift endpoint |
usersDisconnect |
Disconnects from the current Thrift endpoint |
usersAdd <username> <realname> <isAdmin: true|false> [password] |
Adds the user to the database |
usersUpdateProfile <username> <realname> <isAdmin: true|false> |
Changes the personal information of a user |
usersUpdatePassword <username> [password] |
Changes the password of a user |
usersRemove <username> |
Removes a user |
usersCheck <username> [password] |
Validates credentials |