package io.fathom.cloud.image; import io.fathom.cloud.protobuf.ImageModel.ImageData; import io.fathom.cloud.state.NumberedItemCollection; import io.fathom.cloud.state.RepositoryBase; import io.fathom.cloud.state.StateStore.StateNode; import javax.inject.Singleton; @Singleton public class ImageRepository extends RepositoryBase { public NumberedItemCollection<ImageData> getImages() { StateNode root = stateStore.getRoot("images"); return new NumberedItemCollection<ImageData>(root, ImageData.newBuilder(), ImageData.getDescriptor() .findFieldByNumber(ImageData.ID_FIELD_NUMBER)); } // public NumberedItemCollection<InstanceInfo> getInstances(long projectId) // { // StateNode root = stateStore.getRoot("instances"); // StateNode node = root.child(Long.toHexString(projectId)); // // return new NumberedItemCollection<InstanceInfo>(node, // InstanceInfo.newBuilder(), InstanceInfo.getDescriptor() // .findFieldByNumber(InstanceInfo.ID_FIELD_NUMBER)); // } // // public NumberedItemCollection<SecurityGroupData> getSecurityGroups( // long projectId) { // StateNode root = stateStore.getRoot("securitygroups"); // StateNode node = root.child(Long.toHexString(projectId)); // // return new NumberedItemCollection<SecurityGroupData>(node, // SecurityGroupData.newBuilder(), SecurityGroupData // .getDescriptor().findFieldByNumber( // SecurityGroupData.ID_FIELD_NUMBER)); // } // // public NamedItemCollection<KeyPairData> getKeypairs(long projectId) { // StateNode root = stateStore.getRoot("keys"); // StateNode node = root.child(Long.toHexString(projectId)); // // return new NamedItemCollection<KeyPairData>(node, // KeyPairData.newBuilder(), KeyPairData.getDescriptor() // .findFieldByNumber(KeyPairData.KEY_FIELD_NUMBER)); // } // // public IdProvider getSecurityGroupRuleIdProvider() { // return stateStore.getIdProvider("securitygrouprules.id"); // } }