You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@knox.apache.org by "Larry McCay (JIRA)" <ji...@apache.org> on 2016/05/13 11:49:12 UTC
[jira] [Created] (KNOX-713) Knox Shell HDFS.get.Request is Package
Private
Larry McCay created KNOX-713:
--------------------------------
Summary: Knox Shell HDFS.get.Request is Package Private
Key: KNOX-713
URL: https://issues.apache.org/jira/browse/KNOX-713
Project: Apache Knox
Issue Type: Bug
Components: ClientDSL
Reporter: Larry McCay
Assignee: Larry McCay
Fix For: 0.9.1
As raised on the user@ list by Chris Snow, the Knox ClientDSL classes for the HDFS Request are package private. This causes compilation errors when developing a program that leverages them in a different package namespace.
Chris provided the following example:
{code}
package net.christophersnow;
import org.apache.hadoop.gateway.shell.Hadoop;
import org.apache.hadoop.gateway.shell.hdfs.Hdfs;
public class TestKnox {
public static void main(String[] args) {
Hadoop session = Hadoop.login( "test", "test", "test" );
String text = Hdfs.get( session ).from( "test" ).now().getString();
session.shutdown();
}
}
{code}
Which results in the following errors:
{code}
:compileJava/home/travis/build/snowch/knox-java-example/src/main/java/net/christophersnow/TestKnox.java:12: error: from(String) in Request is defined in an inaccessible class or interface
String text = Hdfs.get( session ).from( "test" ).now().getString();
^
/home/travis/build/snowch/knox-java-example/src/main/java/net/christophersnow/TestKnox.java:12: error: now() in AbstractRequest is defined in an inaccessible class or interface
String text = Hdfs.get( session ).from( "test" ).now().getString();
^
where T is a type-variable:
T extends Object declared in class AbstractRequest
/home/travis/build/snowch/knox-java-example/src/main/java/net/christophersnow/TestKnox.java:12: error: getString() in BasicResponse is defined in an inaccessible class or interface
String text = Hdfs.get( session ).from( "test" ).now().getString();
^
3 errors
FAILED
{code}
The Request inner classes need to be made public across all of the service clientDSL code.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)