---
title: "Business Logic — JKKCallWrisvcAutoAplyCC.isNull()"
layer: "CC/Common Component"
module: "common"
package: "com.fujitsu.futurity.bp.custom.common"
loc: 8
---

# Business Logic — JKKCallWrisvcAutoAplyCC.isNull() [8 LOC]

| Field | Value |
|-------|-------|
| Fully Qualified Name | `com.fujitsu.futurity.bp.custom.common.JKKCallWrisvcAutoAplyCC` |
| Layer | CC/Common Component |
| Module | `common` (Package: `com.fujitsu.futurity.bp.custom.common`) |

## 1. Role

### JKKCallWrisvcAutoAplyCC.isNull()

`isNull` is a private null-check utility method used within the **Contract Renewal Change Registration Common Component** (`JKKCallWrisvcAutoAplyCC`) of the K-Opticom eo Customer Backbone System. Its sole purpose is to perform a null determination (null判定) on an arbitrary `Object` parameter and return a boolean result (判定結果).

This method serves as a defensive guard within the `editInMsg` method, which builds input parameter maps for contract aggregation (契約者結合) and billing combination (請求結合) scenarios. Specifically, `isNull` is called with the `seikyKeiNo` (旧請求契約番号) parameter to determine whether the current operation is a standard contract aggregation (`seikyKeiNo` is null, division code `"11"`) or a billing combination (`seikyKeiNo` is present, division code `"13"`). By encapsulating the null check, it keeps the conditional branch in `editInMsg` readable and ensures consistent null-safety behavior throughout the component.

While this method does not perform CRUD operations or invoke any services, it is a foundational helper that enables correct business routing within the contract change registration workflow. It follows the **guard clause pattern** — returning early when a precondition (non-null) is not met.

**Javadoc translation:** Performs null determination on the argument. @param param — the object to check. @return the determination result (true if null, false otherwise).

## 2. Processing Pattern (Detailed Business Logic)

```mermaid
flowchart TD
    START(["isNull(params)"])
    COND{param == null}
    RETURN_TRUE(["return true"])
    RETURN_FALSE(["return false"])

    START --> COND
    COND -->|true| RETURN_TRUE
    COND -->|false| RETURN_FALSE
```

**Processing flow:**

1. **Entry** — The method receives an `Object param` (line 244).
2. **Null check condition** — Evaluates whether `param` references `null` (line 245).
3. **True branch** — If `param` is `null`, the method returns `true`, indicating the object is null (line 246–248).
4. **False branch** — If `param` is NOT `null`, the method returns `false`, indicating the object is non-null (line 249).

This is a straightforward primitive null check with no constant resolution, no branching on domain codes, and no side effects.

## 3. Parameter Analysis

| No | Parameter Name | Type | Business Description |
|----|---------------|------|---------------------|
| 1 | `param` | `Object` | An arbitrary business object whose null state determines processing in the caller. In the only known usage (`editInMsg`), it is passed a `String` representing the billing combination number (`seikyKeiNo`). A null value indicates a standard contract aggregation (契約者結合) scenario, while a non-null value indicates a billing combination (請求結合) scenario. |

**Instance fields / external state:** None. This method is stateless and reads no instance fields.

## 4. CRUD Operations / Called Services

This method performs no CRUD operations, no service calls, and no database interactions. It is a pure null-check utility.

| CRUD | SC / CBS | SC Code | Entity / DB | Operation Description |
|------|----------|---------|-------------|----------------------|
| — | — | — | — | No CRUD or service calls — pure null-check utility |

## 5. Dependency Trace

### Pre-computed evidence from code analysis graph:

No screen/batch entry points found within 8 hops. Direct callers found: 1 method.
Terminal operations from this method: -

| # | Caller (Screen/Batch) | Call Chain (Full Path to this Method) | Terminal (SC / CRUD / Entity) |
|---|----------------------|--------------------------------------|-------------------------------|
| 1 | Component:JKKCallWrisvcAutoAplyCC | `editInMsg(param, dataMap, svcList, workDataMap, seikyKeiNo)` -> `isNull(seikyKeiNo)` | None (no terminal CRUD from isNull) |

**Caller context:** The sole caller is `editInMsg()`, a private method within the same class `JKKCallWrisvcAutoAplyCC`. This method is invoked from `execute()` (lines 73 and 89) which builds input parameter maps for contract change registration. The `isNull` check determines the aggregation type:

- When `seikyKeiNo` is **null** → Contract aggregation (契約者結合), sets `add_chge_div` to `"11"` (登録／変更区分).
- When `seikyKeiNo` is **present** → Billing combination (請求結合), sets `add_chge_div` to `"13"` (登録／変更区分).

## 6. Per-Branch Detail Blocks

**Block 1** — [IF] `(param == null)` (L245)

> Evaluates whether the passed object reference is null. This is the primary conditional branch that routes the return value.

| # | Type | Code |
|---|------|------|
| 1 | COND | `if(param == null)` // null判定を行います。 (Perform null determination on the argument) |
| 2 | RETURN | `return true;` // 判定結果 — true if param is null (判定結果：引数がNULLの場合はtrueを返す) |

**Block 1.1** — [ELSE-implicit] `(param != null)` (L248)

> Fallback branch executed when param is not null. Returns false.

| # | Type | Code |
|---|------|------|
| 1 | RETURN | `return false;` // 判定結果 — false if param is not null (判定結果：引数がNULLでない場合はfalseを返す) |

## 7. Glossary

| Term | Type | Business Meaning |
|------|------|------------------|
| `isNull` | Method | Private null-check utility — returns true if the given Object parameter is null, false otherwise |
| `seikyKeiNo` | Field | Billing contract number (請求契約番号) — the previous billing contract number used to distinguish billing combination (請求結合) from standard contract aggregation (契約者結合) |
| 契約者結合 (Keiyakusha Ketsugou) | Business term | Contract aggregation — combining multiple contract holders under a single account; indicated by `add_chge_div = "11"` |
| 請求結合 (Seikyuu Ketsugou) | Business term | Billing combination — combining billing for multiple contracts under a single bill; indicated by `add_chge_div = "13"` |
| `add_chge_div` | Field | Registration/Change division code (登録／変更区分) — distinguishes the type of contract change operation (`"11"` for aggregation, `"13"` for billing combination) |
| `JKKCallWrisvcAutoAplyCC` | Class | Contract Renewal Change Registration Common Component — shared component for K-Opticom contract change registration workflows |
| K-Opticom | Business term | Japanese telecommunications service provider (eo light fiber internet, etc.) |
| eo Customer Backbone System | Business term | 顧客基幹システム — the core customer account and contract management system for K-Opticom |
| `editInMsg` | Method | Private method that builds input parameter maps for contract change registration requests |
| Guard Clause Pattern | Design pattern | A pattern where early returns eliminate nested conditionals, improving readability |
