Networking-related value types.
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.