merge recent upgrade changes from 2.4 branch
look up guid when done setting access by docid so we can sync and refresh accesspolicy on MN and CN.
additional logging for set access
get guid from online id for call to SyncAccessPolicy
setAccessAction: get guid from passed in id for calls to SyncAccessPolicy, HazelcastService.refreshSystemMetadataEntry
example of how we can look up pid (guid) given a metacat docid.
include a few tests for isEqual method. https://projects.ecoinformatics.org/ecoinfo/issues/6407
Change isEqual to private so it can be used by test suite
allow statements starting with 'WITH'
add comment (and commented out code) for possibly inspecting the /dirtySysMeta call for archive=true flag. https://projects.ecoinformatics.org/ecoinfo/issues/6417
only index event information for known events. https://projects.ecoinformatics.org/ecoinfo/issues/6346
call getDescription on cn.setaccesspolicy service failure
make all objects in a package publicly readable when published. https://projects.ecoinformatics.org/ecoinfo/issues/6415
Add the code to check if the docid contains the whitespaces in the handleInsertOrUpdate, handleUpload and handleInsertMultipartInsertAction methods.
make all package contents publicly readable when publishing with a DOI. https://projects.ecoinformatics.org/ecoinfo/issues/6415
Run syncAll in a single thread so admin config UI doesn't freeze
Change CnodeService.archive() to no longer broadcast MN.archive() calls to all of the replica MNs of a pid, but rather broadcast MN.systemMetadataChanged().
allow utf-8 user first/last names to be used in responses for: login, logout, validatesession, getprincipals.
Couple modifications:-use "pid" throughout so as not to confuse docids and pids-ensure any failures in the set do not prevent synching for other pids in the set
sync pids of <distribution><online> data objects with CN when their access rules change in EML 2.0.* <additionalMetadata>
Modified the usage.
do not set sm.archived=true when generating system metadata for objects that come in via the old Metacat API.
Modify the usage message.
Use a DN name for the group in the usage message printout.
Fixed bug where sync'ing not working when CN had more access rules than MN
Sync access policy between MN -> CN when access rules are updated in EML 2.1+ for data object
Remove code to add the organzation in the search filter. This is not necessary since we use the dn as the search base. The code was not actually used but caused some problem.
can only log events with a valid localId.
Add a note to let user know he/she should use single quotes to surround the hashed password.
edit some of the user management phrases. use UTF-8 for all returned XML. https://projects.ecoinformatics.org/ecoinfo/issues/6320
Fixed a bug that AuthFile constructor didn't read the new value of the password file path from the metacat.properties.
Add the code to handle a runtime exception.
Add code to persist the properties in the group 3.
If the user doesn't exist in the password file, the auth configuration will give an error.
Add a method to get the user management url.
Fixed Exception declaration problem
minor changes to error msgs
When a docid's access policy is modified with metacat native api, update CN with the new access policy
Add a note to the administrator to tell the name format of groups and users.
fix typos/compilation
Change to use AuthFile constructor.
Add code to check if groups is null.
Sync access policy between mn -> cn in case where metacat native ui being used to update ap on mn
Consolidate the user/group utitlities code.
Change the element name in the user from "group" to "memberof".Fixed a bug that in groupadd.
Add methods to handle modify user's attributes.
Complete the method - handleUseradd.
Add code to handle useradd command.
Fixed a bug that showing illegal options in the groupadd command.
Add a main method which will be used in the command line users management tool.
Add the code to handle the organization name.
Add the getUserInfo method.
Add the common name, organization name and email into the getprincipal method.
Add some contants.
Add the description in the getGroups methods.
Add the common name and email address information into the getUsers method.
Fixed a bug that the method addUser didn't set password.
Change the code to use BCryptHash to protect password.
Unify solr indexing with an IndexTask that is added to the queue -- allows us to send more than just the systemMetadata to the indexer. Initially this is for READ event counts for each document. https://projects.ecoinformatics.org/ecoinfo/issues/6346
Add code to get user info and group info for an alias.
Add the code to handle the login action if it is an alias.
Add the methods to get the aliased dn through non-tls or tls.
Add a method to get the aliasedDn.
On changes to system metadata in CNodeService and DocumentImpl, increment the serialVersion.
(task #6297): sync pid(s) access policy between member node and coordinating node
Change CNodeService's archive() and delete() methods to only update Member Nodes in the replica list (not CNs!), since calling CN.archive() again would cause an infinite loop. Thanks for catching this Ben.
Update CNodeService.delete() and .archive() to handle situations where the pid is of formatType DATA, and therefore are not registered in the identifier table, and caused NotFound exceptions. For DATA objects, we just update the system metadata now, and for all other objects (METADATA, RESOURCE), we continue to use super.{delete()|archive()}. Also, log the delete/archive into the event log....
Remove the broadcastSystemMetadataChange() method since it was a duplicate of notifyReplicaNodes(). Consolidated now.
Add some log information.
retrieve the given file names (entityName) of the data files from the EML and use those for our file names in the BagIt content.
Change the BagIt file names to the pid+resource type. Create new Files instead of createTempFile to avoid the randomly generated numbers in the name.
Add a description element for the group.
Change the user id from the name to the uid.
Add the method to get the principals.
Add the methods about reset and change password.
Add method to get groups and users.
Read the password from property file.
Encrypt the password.
Fixed an issue to check if an account exists.
Add a file based authentication mechanism.
Add the code to set the replication status when some exceptions happen.
generate ORE object when publishing even if there was not an ORE for the original package. https://projects.ecoinformatics.org/ecoinfo/issues/6194
set registry permissions when configuring the exploded war on *nix systems. https://projects.ecoinformatics.org/ecoinfo/issues/4690
Add the methond named isAuthoritativeMNodeAdmin method. It applies to both CN and MN methods.
On calls to archive(), log the correct call (not delete()).
change method name from copy and paste.
use 2.3.0 for this next release of metacat.
Fixed a bug that the configuration page shows complete even though the DataONE configuration hadn't done yet.
Add a util class for dataone configuration.
Add code the display the SchemaModification exception.
Fixed a catch clause syntax which is only compatible with java 1.7.
Add code the overwrite the schema.xml in the solr-home/conf.
Fixed a bug that the group information couldn't be retrived from the session.
Change the guid.ezid.uritemplate.metadata property value to the hostname only, with no context
correctly configure metacat-index to use metacat context/deployment location. https://projects.ecoinformatics.org/ecoinfo/issues/6138
Reviewed code for all uses of FileInputStream, checking to see if the method should be closing the stream, and if so, closing it in the method as well as in the finally clause to ensure we don't leak file descriptors.
Sparate the action reindex and reindexall.
Closing some more streams that were left open. This Bug #6136 seems to be pervasive and is going to require an extensive audit to find all of the places where streams are not closed properly.
Refactor to use IOUtils.closeQuietly() which handles nulls and streams that are already closed.