/ao-net-types

Networking-related value types.

Primary LanguageJavaGNU Lesser General Public License v3.0LGPL-3.0

project: current stable management: production packaging: active
java: >= 8 semantic versioning: 2.0.0 license: LGPL v3

Build Maven Central Quality Gate Status Lines of Code
Reliability Rating Security Rating Maintainability Rating Coverage

Networking-related value types.

Project Links

Features

  • IPv4 and IPv6 address families.
  • Individual addresses and network ranges.
  • Protocols, ports, and port ranges.
  • Supports optimization through reduction of IP and port combinations through:
    • Coalescing of addresses and network ranges into fewer network ranges.
    • Coalescing of ports and port ranges into fewer port ranges.
  • Fast serializable and self-validating objects.
  • Internable for memory savings on large datasets.
  • Small footprint, minimal dependencies - not part of a big monolithic package.
  • Java 1.8 implementation:
    • Android compatible.
  • Compatible PostgreSQL type implementations for database-level integrity.

Motivation

The AOServ Platform allows configuration of services on a per-port and per-IP basis. System configuration components like AO SELinux and AO firewalld support configurations over port ranges and network ranges.

These value types are a common representation of networking configuration shared between various components. They have minimal dependencies and may be useful for projects needing to go beyond the stock java.net.* classes.

Evaluated Alternatives

Admittedly, several features of this API are redundant with the standard Java API. This API has a long history and, as the Java platform matures, is increasingly redundant. When it is sufficient for your needs, please prefer the standard Java API.

Contact Us

For questions or support, please contact us:

Email: support@aoindustries.com
Phone: 1-800-519-9541
Phone: +1-251-607-9556
Web: https://aoindustries.com/contact