ResourceShape extends EntityShape implements ToSmithyBuilder<ResourceShape> { public static Builder builder() { return new Builder(); } private  ResourceShape(Builder builder); static Builder builder(); @Override Builder toBuilder(); @Override R accept(ShapeVisitor<R> cases); @Override Optional<ResourceShape> asResourceShape(); @Override Set<ShapeId> getAllOperations(); Set<ShapeId> getCollectionOperations(); Map<String, ShapeId> getIdentifiers(); boolean hasIdentifiers(); Optional<ShapeId> getPut(); Optional<ShapeId> getCreate(); Optional<ShapeId> getRead(); Optional<ShapeId> getUpdate(); Optional<ShapeId> getDelete(); Optional<ShapeId> getList(); @Override boolean equals(Object other);  }
@Test public void returnsAppropriateType() { ResourceShape shape = ResourceShape.builder().id("ns.foo#Bar").build(); assertEquals(shape.getType(), ShapeType.RESOURCE); }
@Test public void mustNotContainMembersInShapeId() { Assertions.assertThrows(SourceException.class, () -> { ResourceShape.builder().id("ns.foo#Bar$baz").build(); }); }