Skip to content

Backoffice and internal portal extension for the application layer with context resolution and resource controller abstractions.

License

Notifications You must be signed in to change notification settings

fireflyframework/fireflyframework-backoffice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Firefly Framework - Backoffice

CI License Java Spring Boot

Backoffice layer library extending the application module with customer impersonation, audit trail, and enhanced security context.


Table of Contents

Overview

Firefly Framework Backoffice extends the application layer for internal backoffice and portal systems. It adds backoffice-specific context management, customer impersonation capabilities, enhanced security context with operator tracking, and abstract controllers tailored for administrative operations.

The module provides BackofficeContext and BackofficeSecurityContext which extend the application-layer contexts with operator identity, impersonated customer tracking, and audit trail support. Abstract controllers provide standardized REST patterns for backoffice resource management.

This library is designed for internal-facing microservices that require administrative capabilities, customer support workflows, and enhanced audit tracking beyond what the standard application layer provides.

Features

  • BackofficeContext with operator identity and impersonation support
  • BackofficeSecurityContext extending application security context
  • AbstractBackofficeController for standardized backoffice REST endpoints
  • AbstractBackofficeResourceController for resource-based CRUD operations
  • BackofficeContextResolver for extracting backoffice context from requests
  • DefaultBackofficeContextResolver with configurable header mappings
  • BackofficeSessionContextMapper for session-to-context mapping
  • Customer impersonation tracking and audit trail

Requirements

  • Java 21+
  • Spring Boot 3.x
  • Maven 3.9+

Installation

<dependency>
    <groupId>org.fireflyframework</groupId>
    <artifactId>fireflyframework-backoffice</artifactId>
    <version>26.02.04</version>
</dependency>

Quick Start

import org.fireflyframework.common.backoffice.controller.AbstractBackofficeController;
import org.fireflyframework.common.backoffice.context.BackofficeContext;

@RestController
@RequestMapping("/api/backoffice/customers")
public class CustomerBackofficeController extends AbstractBackofficeController {

    @GetMapping("/{customerId}")
    public Mono<CustomerDetails> getCustomer(
            @PathVariable String customerId,
            BackofficeContext context) {
        // context provides operator identity and impersonation info
        return customerService.findById(customerId, context);
    }
}

Configuration

firefly:
  backoffice:
    context:
      operator-header: X-Operator-Id
      impersonation-header: X-Impersonated-Customer

Documentation

No additional documentation available for this project.

Contributing

Contributions are welcome. Please read the CONTRIBUTING.md guide for details on our code of conduct, development process, and how to submit pull requests.

License

Copyright 2024-2026 Firefly Software Solutions Inc.

Licensed under the Apache License, Version 2.0. See LICENSE for details.

About

Backoffice and internal portal extension for the application layer with context resolution and resource controller abstractions.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors 2

  •  
  •  

Languages