Skip to content

Commit 01eb4ae

Browse files
authored
add functionality to multiply Quantity by a scalar value
1 parent 6f70710 commit 01eb4ae

File tree

2 files changed

+20
-0
lines changed
  • kubernetes-model-generator/kubernetes-model-core/src

2 files changed

+20
-0
lines changed

kubernetes-model-generator/kubernetes-model-core/src/main/java/io/fabric8/kubernetes/api/model/Quantity.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -408,6 +408,18 @@ public Quantity subtract(Quantity y) {
408408
return op(y, BigDecimal::subtract);
409409
}
410410

411+
/**
412+
* Multiplies the quantity by the specified scalar multiplicand.
413+
*
414+
* @param multiplicand the scalar value to multiply by
415+
* @return a new Quantity resulting from the multiplication of this quantity by the scalar multiplicand
416+
*/
417+
public Quantity multiply(int multiplicand) {
418+
BigDecimal numericalAmount = getNumericalAmount();
419+
numericalAmount = numericalAmount.multiply(BigDecimal.valueOf(multiplicand));
420+
return fromNumericalAmount(numericalAmount, format);
421+
}
422+
411423
Quantity op(Quantity y, BiFunction<BigDecimal, BigDecimal, BigDecimal> func) {
412424
BigDecimal numericalAmount = this.getNumericalAmount();
413425
numericalAmount = func.apply(numericalAmount, y.getNumericalAmount());

kubernetes-model-generator/kubernetes-model-core/src/test/java/io/fabric8/kubernetes/api/model/QuantityTest.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,4 +222,12 @@ void testSubtract() {
222222
Quantity quantity = new Quantity("0Mi");
223223
assertThat(quantity.subtract(new Quantity("1Ki"))).isEqualTo(new Quantity("-1Ki"));
224224
}
225+
226+
@Test
227+
void testMultiply() {
228+
Quantity quantity = new Quantity("4Gi");
229+
assertThat(quantity.multiply(0)).isEqualTo(new Quantity("0"));
230+
assertThat(quantity.multiply(3)).isEqualTo(new Quantity("12Gi"));
231+
assertThat(quantity.multiply(-3)).isEqualTo(new Quantity("-12Gi"));
232+
}
225233
}

0 commit comments

Comments
 (0)