Class FunctionalLocation
java.lang.Object
neqsim.process.util.topology.FunctionalLocation
- All Implemented Interfaces:
Serializable, Comparable<FunctionalLocation>
public class FunctionalLocation
extends Object
implements Serializable, Comparable<FunctionalLocation>
Represents a functional location tag following STID/ISO 14224 conventions.
Format: PPPP-TT-NNNNN[S] where:
- PPPP = Platform/Installation code (e.g., 1775 = Gullfaks C)
- TT = Equipment type code (KA=compressor, PA=pump, VA=valve, etc.)
- NNNNN = Sequential number
- S = Suffix for parallel units (A, B, C...)
Example: 1775-KA-23011A = Gullfaks C, Compressor, unit 23011, train A
- Version:
- 1.0
- Author:
- NeqSim Development Team
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classBuilder class for FunctionalLocation. -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Stringstatic final StringÅsgard A installation code.static final StringÅsgard B installation code.static final StringÅsgard C installation code.private Stringprivate Stringprivate Stringstatic final StringGullfaks A installation code.static final StringGullfaks B installation code.static final StringGullfaks C installation code.private Stringprivate Stringstatic final StringOseberg A installation code.private Stringprivate static final longprivate static final PatternPattern for parsing STID tags.private Stringprivate Stringprivate Stringstatic final StringTroll A installation code.static final StringCompressor type code.static final StringCooler type code.static final StringHeat exchanger type code.static final StringHeater type code.static final StringElectric motor type code.static final StringPipeline type code.static final StringPump type code.static final StringSeparator type code.static final StringTank type code.static final StringTurbine type code.static final StringValve type code. -
Constructor Summary
ConstructorsConstructorDescriptionFunctionalLocation(String stidTag) Creates a functional location from a full STID tag.FunctionalLocation(String installationCode, String equipmentTypeCode, String sequentialNumber, String trainSuffix) Creates a functional location with individual components. -
Method Summary
Modifier and TypeMethodDescriptionstatic FunctionalLocation.Builderbuilder()Creates a new builder for FunctionalLocation.private StringbuildTag()intcompareTo(FunctionalLocation other) booleangetArea()Gets the area.Gets the base tag without train suffix (for finding parallel units).Gets the description.Gets the equipment type code.Gets the equipment type description from code.Gets the full STID tag.Gets the installation code.Gets the installation name.private StringGets the sequential number.Gets the subsystem.Gets the system.Gets the train suffix.inthashCode()booleanisParallelTo(FunctionalLocation other) Checks if this is a parallel train to another equipment.booleanChecks if this is a parallel unit (has train suffix).booleanChecks if this equipment is on the same installation.booleanisSameSystem(FunctionalLocation other) Checks if this is in the same system (same first 2 digits of sequential number).private voidvoidSets the area.voidsetDescription(String description) Sets the description.voidsetSubsystem(String subsystem) Sets the subsystem.voidSets the system.toString()
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
STID_PATTERN
Pattern for parsing STID tags. -
GULLFAKS_A
-
GULLFAKS_B
-
GULLFAKS_C
-
ASGARD_A
-
ASGARD_B
-
ASGARD_C
-
TROLL_A
-
OSEBERG_A
-
TYPE_COMPRESSOR
-
TYPE_PUMP
-
TYPE_VALVE
-
TYPE_HEAT_EXCHANGER
-
TYPE_SEPARATOR
-
TYPE_TURBINE
-
TYPE_MOTOR
-
TYPE_TANK
-
TYPE_PIPELINE
-
TYPE_COOLER
-
TYPE_HEATER
-
installationCode
-
installationName
-
equipmentTypeCode
-
sequentialNumber
-
trainSuffix
-
fullTag
-
system
-
subsystem
-
area
-
description
-
-
Constructor Details
-
FunctionalLocation
Creates a functional location from a full STID tag.- Parameters:
stidTag- the full STID tag (e.g., "1775-KA-23011A")
-
FunctionalLocation
public FunctionalLocation(String installationCode, String equipmentTypeCode, String sequentialNumber, String trainSuffix) Creates a functional location with individual components.- Parameters:
installationCode- the installation code (e.g., "1775")equipmentTypeCode- the equipment type code (e.g., "KA")sequentialNumber- the sequential number (e.g., "23011")trainSuffix- the train suffix (e.g., "A") or null
-
-
Method Details
-
parseTag
-
buildTag
-
getInstallationNameFromCode
-
getEquipmentTypeDescription
Gets the equipment type description from code.- Returns:
- human-readable equipment type
-
isParallelUnit
public boolean isParallelUnit()Checks if this is a parallel unit (has train suffix).- Returns:
- true if parallel unit
-
getBaseTag
Gets the base tag without train suffix (for finding parallel units).- Returns:
- base tag without suffix
-
isSameInstallation
Checks if this equipment is on the same installation.- Parameters:
other- other functional location- Returns:
- true if same installation
-
isParallelTo
Checks if this is a parallel train to another equipment.- Parameters:
other- other functional location- Returns:
- true if parallel trains (same base tag, different suffix)
-
isSameSystem
Checks if this is in the same system (same first 2 digits of sequential number).- Parameters:
other- other functional location- Returns:
- true if same system
-
builder
Creates a new builder for FunctionalLocation.- Returns:
- new builder instance
-
getInstallationCode
-
getInstallationName
-
getEquipmentTypeCode
-
getSequentialNumber
-
getTrainSuffix
-
getFullTag
-
getSystem
-
setSystem
-
getSubsystem
-
setSubsystem
-
getArea
-
setArea
-
getDescription
-
setDescription
Sets the description.- Parameters:
description- description
-
compareTo
- Specified by:
compareToin interfaceComparable<FunctionalLocation>
-
equals
-
hashCode
-
toString
-