package com.hqyg.disjob.register.auth.node; import java.util.ArrayList; import java.util.List; import org.apache.curator.framework.AuthInfo; import org.apache.curator.framework.CuratorFramework; import org.apache.zookeeper.data.ACL; import com.hqyg.disjob.register.auth.AuthConstants; import com.hqyg.disjob.register.auth.AuthZKRegistry; import com.hqyg.disjob.register.auth.EjobAuthInfo; import com.hqyg.disjob.register.auth.EjobOwnerACL; import com.hqyg.disjob.register.repository.ZnodeApi; import com.hqyg.disjob.register.repository.ZnodeApiCuratorImpl; class AdminAuthNode{ protected CuratorFramework client; protected ZnodeApi znode = new ZnodeApiCuratorImpl(); private String nodepath = AuthConstants.adminRootPath; public AdminAuthNode(CuratorFramework client){ this.client = client; } public List<AuthInfo> getAuthInfos(){ List<AuthInfo> authInfos = new ArrayList<>(); if(znode.getData(client, AuthConstants.adminRootPath) == null){ new AuthZKRegistry(client).init(); } authInfos.add(new EjobAuthInfo(znode.getByteData(client, nodepath))); return authInfos; } public List<ACL> getACLs() { List<ACL> acllist = new ArrayList<>(); String adminAccount = znode.getData(client, nodepath); acllist.add(new EjobOwnerACL(adminAccount)); return acllist; } }