All Classes and Interfaces

Class
Description
Created by amidani on 26/06/2017.
Created by amidani on 24/03/2017.
An action that can be executed as a consequence of a Rule being triggered.
This annotation is designed to describe the groovy actions which are created from groovy file, the informations added with this annotation will be processed to create an action type entry in elastic search.
This class is the base interface for action dispatcher, which provide a pluggeable way to implement classes that will dispatcher to execute actions.
A piece of code that performs a specified Action, given a triggering Event
This class is the base interface to define the action dispatcher to execute according to the action type of the action The action executor dispatcher get the list of the action dispatchers present in unomi When the execute method is called, the dispatch will be done according to the prefix of the action executor of the action type
 
 
An action to be executed after all Rule-derived have been processed.
A type definition for Actions.
 
 
 
 
 
 
 
A rule action that can add a profile to a list
A specification for an aggregate as part of AggregateQuerys
A query by aggregate: results matching the specified Condition are aggregated using a given Aggregate specification, creating buckets which cardinality is calculated.
Deprecated.
Created by amidani on 16/06/2017.
A wrapper filter around JAASAuthenticationFilter so that we can deactivate JAAS login around some resources and make them publicly accessible.
Authorizing interceptor is in charge of testing that current authenticate user have the expected role during method access
Created by amidani on 13/06/2017.
 
 
 
 
 
 
 
 
 
 
 
 
A representation of an operation to update the value of a property on items matching a specific condition.
ES query builder for boolean conditions.
Evaluator for AND and OR conditions.
Interface for the bundle watcher system in Apache Unomi.
This class listens to the global Apache Unomi bundle lifecycle, to provide statistics and state of the overall system.
A Health Check response.
 
 
 
A goal-oriented, time-limited marketing operation that needs to be evaluated for return on investment performance by tracking the ratio of visits to conversions.
 
Details about a Campaign.
A specific campaign event to help analyzing your key performance indicators by marking specific dates during your campaign.
A JAX-RS endpoint to manage Campaigns and related information.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A rule action that can add a profile to a list
 
 
Example graphql visibility provider It will block: - CDP_SegmentInput's view field as well as - .remove* fields at any depth level
This class loader will always try to load classes first from the child URL class loader and will only resort to the parent class loader if the class coudln't be found.
A servlet filter to serve a context-specific Javascript containing the current request context object.
Deprecated.
this servlet is now deprecated, because it have been migrated to REST endpoint.
A Health Check that checks the status of the Unomi cluster service.
Information about a cluster node.
A service to access information about the context server's cluster.
A JAX-RS endpoint to access information about the context server's cluster.
Implementation of the persistence service interface
Created by amidani on 28/06/2017.
 
 
A set of elements that can be evaluated.
Utility class for creating various types of Condition objects.
 
 
 
 
Condition evaluator interface
Entry point for condition evaluation.
 
 
ConditionTypes define new conditions that can be applied to items (for example to decide whether a rule needs to be triggered or if a profile is considered as taking part in a campaign) or to perform queries against the stored unomi data.
 
Created by amidani on 06/07/2017.
A service to share configuration properties with other bundles.
 
 
 
An implementation of the ConfigSharingService that supports listeners that will be called when a property is added, updated or removed.
Utility class to handle configuration updates in ManagedService implementations.
Functional interface for property processing.
Functional interface for custom property processing.
 
 
A consent is an object attached to a profile that indicates whether the profile has agreed or denied a special consent type.
 
 
This enum class represents the type of grant a @Consent might have.
 
An incoming request for context information from clients of the context server.
Custom deserializer for ContextRequest that do validate the object using JSON Schema
A context server response resulting from the evaluation of a client's context request.
Deprecated.
this servlet is now deprecated, because it have been migrated to REST endpoint.
System strategy to calculate control group on personalization that would use such configuration The status is then stored in the current profile/session under: systemProperties.personalizationStrategyStatus A control group is used with a percentage to decide if the current profile/session should have personalized results or not
 
Creates or updates a Salesforce lead from the corresponding Apache Unomi profile (using a common identifier field, usually the email address)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A generic extension of Item for context server extensions, properties are stored in a Map.
 
Custom object mapper to be able to configure Jackson to our needs.
A custom Rest high level client that provide a way of using Task system on updateByQuery and deleteByQuery, by returning the response immediately (wait_for_completion set to false) see org.elasticsearch.client.RestHighLevelClient for original code.
An in memory table structure for storing data and performing operations such as sorting it, or generating JSON or CSV outputs.
 
 
 
 
 
A data range.
 
 
 
 
 
Default implementation for the unomi authentication on Rest endpoints
A service to retrieve definition information about core context server entities such as conditions, actions and values.
A JAX-RS endpoint to retrieve definition information about core context server entities such as conditions, actions and values.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
A Health Check that checks the status of the ElasticSearch connectivity according to the provided configuration.
 
 
This CustomObjectMapper is used to avoid the version parameter to be registered in ES
This mixin is used in ESCustomObjectMapper to prevent the persistent parameter from being registered in ES
This mixin is used in ESCustomObjectMapper to avoid the version parameter to be registered in ES
An action that sets the age of a profile based on his birth date
 
This action is used to calculate the firstVisit, lastVisit and previousVisit date properties on the profile Depending on the event timestamp it will adjust one or multiples of this properties accordingly to the logical chronology.
An event that can be processed and evaluated by the context server.
 
 
 
 
 
 
 
Basic event information
 
A service that gets notified (via EventListenerService.onEvent(Event)) whenever an event it can handle as decided by EventListenerService.canHandle(Event) occurs in the context server.
 
An event property.
 
A request for events to be processed.
Custom deserializer for EventCollectorRequest that do validate the events using JSon Schema
Deprecated.
this servlet is now deprecated, because it have been migrated to REST endpoint.
 
A service to publish events, notably issued from user interactions with tracked entities, in the context server.
A JAX-RS endpoint to access information about the context server's events.
 
TODO: REMOVE
This is a bean that maintain the current situation during a request that contains events to be processed.
 
TODO: REMOVE
A action to copy an event property to a profile property
 
 
Created by amidani on 19/06/2017.
A JAX-RS endpoint to manage ExportConfigurations.
Service to manage Configuration of Item to export Created by amidani on 28/04/2017.
Created by amidani on 29/06/2017.
An expression filter is used to allow/deny scripts for execution.
A factory interface to generate ExpressionFilter instances from a centralized configuration
 
A mapping between two fields
 
This strategy will use filters to only keep the contents that match all their associated filters
 
 
 
 
 
 
 
 
 
 
 
GeoPoint represents a point in geographical coordinate system using latitude and longitude.
 
 
 
A tracked activity / action that can be accomplished by site (scope) visitors.
 
Report information about a Goal.
Statistics
A service to interact with Goals and Campaigns.
A JAX-RS endpoint to manage Goals and related information.
 
 
 
 
Provider of GraphqlFieldVisibility to limit graphql schema fields visibility More about it here https://www.graphql-java.com/documentation/v14/fieldvisibility/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Object which represents a Groovy action (including its script)
High-performance ActionDispatcher for pre-compiled Groovy scripts.
An implementation of a BundleListener for the Groovy language.
 
Service interface for managing Groovy action scripts.
High-performance GroovyActionsService implementation with pre-compilation, hash-based change detection, and thread-safe execution.
 
This implementation of a Groovy ResourceConnector will load resources either from an OSGi bundle or from a source code folder if the corresponding header has been set in the bundle.
Hardcoded property accessors serve two purpose: - control access to object fields, only expose the ones that are "safe" to use - prevent using Java Reflection API that is both slower and potentially unsafe as there could be potential to abuse it.
This class contains the registry of all the hardcoded property accessors.
 
A simple implementation of the Authorization interface (usually provided by UserAdmin).
Health check configuration.
A simple implementation of the HttpContext interface that provides basic authentication for health checks.
 
A Health Check response.
 
 
Health check service that aggregates health checks from multiple providers and ensure asynchronous execution.
A simple servlet that provides a health check endpoint.
Condition builder for hover event types
 
 
This is duplicate of the class from the wab bundle, the original file will be removed once endpoints forwarded
 
 
 
Created by amidani on 22/05/2017.
Created by amidani on 28/04/2017.
A JAX-RS endpoint to manage ImportConfigurations.
Service to manage Configuration of object to import Created by amidani on 28/04/2017.
Created by amidani on 21/06/2017.
A service to access and operate on ImportConfigurations / ExportConfigurations.
A line error object to carry failure
Created by amidani on 14/06/2017.
 
Increments the number of times the user associated with the profile tweeted.
Exception throw when the request exceed the configured limit size
 
An IP address range.
 
Created by amidani on 18/10/2017.
A context server tracked entity.
 
 
 
 
 
 
 
 
 
 
 
 
An implementation of a BundleListener for the JSON schema.
Object which represents a JSON schema, it's a wrapper because it contains some additional info used by the Service layer of Unomi like the id and the target.
 
 
 
 
Created by amidani on 28/06/2017.
Created by amidani on 14/06/2017.
Created by amidani on 29/12/2016.
 
A utility class to make it easier to build tables for listing Apache Unomi objects.
 
 
A helper class to provide localized versions of context server entities.
 
A field used in a field mapping
 
 
 
A class providing information about context server entities.
 
A superclass for all Items that bear Metadata.
 
 
Utility method to run code inside a timer.
 
 
This is the main interface for the metrics service, that makes it possible to count calls, callers and accumulated times for sections of code.
 
 
Deprecated.
use groovy script for implementing new migrations
Service uses to provide configuration information for the migration
Just a bean for a configuration property to be used during migration process
This class is instantiated for each migration process, it contains useful methods to handle the current migration lifecycle.
A simple migration step to be performed
Simple exception to handle errors in migration
Java bean representing a migration script, current implementation support groovy script as migration script following file name pattern need to be respected: migrate-VERSION-PRIORITY-NAME.groovy example: migrate-2.0.0-01-segmentReindex.groovy
Simple OSGI service used for migrating Unomi data
 
 
 
 
 
 
This class will process consent modification actions and update the profile's consents accordingly.
 
MVEL script executor implementation
 
 
 
 
 
todo not yet implemented !
Builder for NOT condition.
Evaluator for NOT condition.
A numeric range.
 
todo not yet implemented !
A representation of a condition parameter, to be used in the segment building UI to either select parameters from a choicelist or to enter a specific value.
Annotation designed to allow to add parameters to an action
Helper class to resolve condition, action and values types when loading definitions from JSON files
 
 
 
 
A list of elements representing a limited view of a larger list, starting from a given element (offset from the first) and showing only a given number of elements, instead of showing all of them.
This enum exists to replicate Lucene's total hits relation in a back-end agnostic way.
 
 
 
Service to handle and manage patches on unomi items.
A JAX-RS endpoint to manage patches.
 
A health check that track the Unomi persistence layer availability.
A service to provide persistence and retrieval of context server entities.
A persona is a "virtual" profile used to represent categories of profiles, and may also be used to test how a personalized experience would look like using this virtual profile.
A class to contain the result of a personalization, containing the list of content IDs as well as a changeType to indicate if a profile and/or a session was modified.
A service to fulfill personalization request.
A filter definition for content filtering
Personalization request
A personalizated content definition.
A target for content filtering.
 
Interface for personalization strategies.
A Persona session.
A convenience object gathering a Persona and its associated PersonaSessions.
The interface for unomi plugins.
This service regroups all privacy-related operations
REST API end point for privacy service
Privacy service implementation
 
 
A user profile gathering all known information about a given user as well as segments it is part of and scores.
 
 
 
 
 
 
 
 
 
Created by amidani on 27/06/2017.
Created by amidani on 28/06/2017.
Created by amidani on 30/06/2017.
Created by amidani on 30/06/2017.
 
Created by amidani on 26/04/2017.
Created by amidani on 22/05/2017.
Created by amidani on 20/05/2017.
Created by amidani on 18/05/2017.
Created by amidani on 26/04/2017.
 
 
 
 
 
 
 
A service to access and operate on Profiles, Sessions and Personas.
A JAX-RS endpoint to manage Profiles and Personas.
 
An extension of Profile to handle merge strategy and deletion when importing profiles
 
 
 
Evaluator for property comparison conditions
 
Helper method for properties
A strategy algorithm to merge profile properties such as "adding integers", "using oldest value", "using most recent value", "merging lists", etc...
A unomi plugin that defines a new property merge strategy.
 
A user-defined profile or session property, specifying how possible values are constrained, if the value is multi-valued (a vector of values as opposed to a scalar value).
This Jackson deserializer makes it possible to register field matching regular expressions that can be matched to class names, as in the following example: SimpleModule deserializerModule = new SimpleModule("PropertyTypedObjectDeserializerModule", new Version(1, 0, 0, null, "org.apache.unomi.rest", "deserializer")); PropertyTypedObjectDeserializer propertyTypedObjectDeserializer = new PropertyTypedObjectDeserializer(null, null); propertyTypedObjectDeserializer.registerMapping("type=.
 
A query wrapper gathering all elements needed for a potentially complex CXS query: Condition, offset, limit, sorting specification, etc.
A service to perform queries.
A JAX-RS endpoint to perform queries against context-server data.
 
 
 
 
 
 
 
Copies a request header value to a profile property TODO add support for multi-valued parameters or storing values as a list
Copies a request parameter to a profile property TODO add support for multi-valued parameters or storing values as a list
This interceptor is made to validate that the incoming post request on the public endpoints do not exceed the configured limit.
 
 
A representation of an ActionType better suited for definitions.
This interface provide rest authentication configuration for the rest server.
A representation of a ConditionType better suited for definitions.
A representation of a Parameter better suited for definitions.
 
Rest server bus
Utility service for Public REST endpoints
 
A representation of a ValueType better suited for definitions.
This is a custom param converter provider only to be able to deserialize correctly objects used by the old servlets.
 
 
Created by amidani on 13/06/2017.
Created by amidani on 04/05/2017.
Created by amidani on 13/06/2017.
 
Created by amidani on 30/06/2017.
A conditional set of actions to be executed in response to incoming events.
 
 
A service that gets called when a rule's conditions are evaluated or when a rule's actions are executed.
This enum indicates which type of already raised event we are dealing with
 
 
A service to access and operate on Rules.
A JAX-RS endpoint to manage Rules.
 
A separate item to track rule statistics, because we will manage the persistence and updating of these seperately from the rules themselves.
This command will list all the rules executions in the shell console.
 
This command can watch the evaluations of the conditions as well as the executions of a specified number of rules.
 
Outputs the Throwable portion of the LoggingEvent as a full stack trace unless this converter's option is 'short', where it just outputs the first line of the trace, or if the number of lines to print is explicitly specified.
 
A service to centralize scheduling of tasks instead of using Timers or executors in each service https://stackoverflow.com/questions/409932/java-timer-vs-executorservice
 
Service that allow to manage JSON schema.
 
Object representing a scope.
 
A service to create, update and delete scope.
A JAX-RS endpoint to manage Scopes.
 
 
 
A set of conditions associated with a value to assign to Profiles when matching so that the associated users can be scored along that dimension.
A scoring dimension along profiles can be evaluated and associated value to be assigned.
A JAX-RS endpoint to manage Scorings
An interface to execute scripts with different implementations.
Metadata container for compiled Groovy scripts with hash-based change detection.
A class loader that uses a allow list and a deny list of classes that it will allow to resolve.
A dynamically evaluated group of similar profiles in order to categorize the associated users.
 
 
 
 
 
 
 
 
 
 
 
 
A combination of Segment and scores (usually associated with a Profile).
A service to access and operate on Segments and Scorings
A JAX-RS endpoint to manage Segments.
 
 
 
 
Basic information about a Unomi server
 
A time-bounded interaction between a user (via their associated Profile) and a unomi-enabled application.
 
 
 
 
 
 
An persistence item that contains the configuration to the Salesforce service.
 
Public interface for the Salesforce connector
Implementation of the Salesforce connector interface
Model object that stores Salesforce session data
 
 
 
 
 
Created by amidani on 29/06/2017.
 
 
 
An Item that is holding system properties.
 
 
 
Representation of a third party server, containing key, ip address, and allowed events
A context-server entity that is timestamped.
 
 
 
 
 
 
Created by amidani on 11/04/2017.
 
A health check that track the Unomi bundles availability.
 
 
This service provide method to manage unomi
 
 
 
 
Created by amidani on 29/12/2016.
 
Update an Apache Unomi profile from a corresponding Salesforce Lead with the same common identifier (usually the email address)
 
Basic information about a User Agent
 
Created by amidani on 24/03/2017.
 
 
Created by amidani on 24/03/2017.
 
 
A JAX-RS endpoint to manage UserLists.
Created by amidani on 24/03/2017.
 
Just a bean wrapping JSON Schema validation messages to avoid exposing the lib classes to other OSGI bundles.
This Exception is throw only when a validation process failed due to unexpected error Or when we can't perform the validation due to missing data or invalid required data
 
A value type to be used to constrain property values.
 
 
 
 
Get the weather location of the users by an API