Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
atlas
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
dataplatform
atlas
Commits
58ea4650
Commit
58ea4650
authored
May 28, 2015
by
Suma S
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #112 from hortonworks/master
Merging from master to DAL
parents
d3c05341
3b9e1b2f
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
62 additions
and
16 deletions
+62
-16
pom.xml
pom.xml
+3
-3
pom.xml
typesystem/pom.xml
+2
-2
TypeSystemTest.java
...ache/hadoop/metadata/typesystem/types/TypeSystemTest.java
+1
-1
pom.xml
webapp/pom.xml
+5
-0
Main.java
webapp/src/main/java/org/apache/hadoop/metadata/Main.java
+4
-0
RexsterGraphResource.java
...e/hadoop/metadata/web/resources/RexsterGraphResource.java
+2
-2
Servlets.java
...in/java/org/apache/hadoop/metadata/web/util/Servlets.java
+12
-2
EntityJerseyResourceIT.java
...hadoop/metadata/web/resources/EntityJerseyResourceIT.java
+33
-6
No files found.
pom.xml
View file @
58ea4650
...
...
@@ -616,9 +616,9 @@
</dependency>
<dependency>
<groupId>
commons-lang
</groupId>
<artifactId>
commons-lang
</artifactId>
<version>
2
.4
</version>
<groupId>
org.apache.commons
</groupId>
<artifactId>
commons-lang
3
</artifactId>
<version>
3
.4
</version>
</dependency>
</dependencies>
</dependencyManagement>
...
...
typesystem/pom.xml
View file @
58ea4650
...
...
@@ -126,8 +126,8 @@
</dependency>
<dependency>
<groupId>
commons-lang
</groupId>
<artifactId>
commons-lang
</artifactId>
<groupId>
org.apache.commons
</groupId>
<artifactId>
commons-lang
3
</artifactId>
</dependency>
</dependencies>
...
...
typesystem/src/test/java/org/apache/hadoop/metadata/typesystem/types/TypeSystemTest.java
View file @
58ea4650
...
...
@@ -19,7 +19,7 @@
package
org
.
apache
.
hadoop
.
metadata
.
typesystem
.
types
;
import
com.google.common.collect.ImmutableList
;
import
org.apache.commons.lang.RandomStringUtils
;
import
org.apache.commons.lang
3
.RandomStringUtils
;
import
org.apache.hadoop.metadata.typesystem.types.utils.TypesUtil
;
import
org.testng.Assert
;
import
org.testng.annotations.AfterMethod
;
...
...
webapp/pom.xml
View file @
58ea4650
...
...
@@ -104,6 +104,11 @@
</dependency>
<dependency>
<groupId>
org.apache.commons
</groupId>
<artifactId>
commons-lang3
</artifactId>
</dependency>
<dependency>
<groupId>
com.tinkerpop.blueprints
</groupId>
<artifactId>
blueprints-core
</artifactId>
</dependency>
...
...
webapp/src/main/java/org/apache/hadoop/metadata/Main.java
View file @
58ea4650
...
...
@@ -39,6 +39,7 @@ public final class Main {
private
static
final
String
APP_PATH
=
"app"
;
private
static
final
String
APP_PORT
=
"port"
;
private
static
final
String
METADATA_HOME
=
"metadata.home"
;
private
static
final
String
METADATA_LOG_DIR
=
"metadata.log.dir"
;
/**
* Prevent users from constructing this.
...
...
@@ -87,6 +88,9 @@ public final class Main {
if
(
System
.
getProperty
(
METADATA_HOME
)
==
null
)
{
System
.
setProperty
(
METADATA_HOME
,
"target"
);
}
if
(
System
.
getProperty
(
METADATA_LOG_DIR
)
==
null
)
{
System
.
setProperty
(
METADATA_LOG_DIR
,
"target/logs"
);
}
}
public
static
String
getProjectVersion
(
PropertiesConfiguration
buildConfiguration
)
{
...
...
webapp/src/main/java/org/apache/hadoop/metadata/web/resources/RexsterGraphResource.java
View file @
58ea4650
...
...
@@ -298,7 +298,7 @@ public class RexsterGraphResource {
String
message
=
"Edge with ["
+
edgeId
+
"] cannot be found."
;
LOG
.
info
(
message
);
throw
new
WebApplicationException
(
Response
.
status
(
Response
.
Status
.
NOT_FOUND
)
.
entity
(
JSONObject
.
quote
(
message
)).
build
());
.
entity
(
Servlets
.
escapeJsonString
(
message
)).
build
());
}
JSONObject
response
=
new
JSONObject
();
...
...
@@ -389,7 +389,7 @@ public class RexsterGraphResource {
countOnly
=
false
;
}
else
{
throw
new
WebApplicationException
(
Response
.
status
(
Response
.
Status
.
BAD_REQUEST
)
.
entity
(
JSONObject
.
quote
(
directionSegment
+
" segment was invalid."
))
.
entity
(
Servlets
.
escapeJsonString
(
directionSegment
+
" segment was invalid."
))
.
build
());
}
}
...
...
webapp/src/main/java/org/apache/hadoop/metadata/web/util/Servlets.java
View file @
58ea4650
...
...
@@ -18,9 +18,12 @@
package
org
.
apache
.
hadoop
.
metadata
.
web
.
util
;
import
com.google.common.base.Preconditions
;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.apache.commons.lang3.StringEscapeUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.hadoop.metadata.MetadataServiceClient
;
import
org.apache.hadoop.metadata.ParamChecker
;
import
org.codehaus.jettison.json.JSONException
;
import
org.codehaus.jettison.json.JSONObject
;
import
org.slf4j.Logger
;
...
...
@@ -38,6 +41,8 @@ import java.io.StringWriter;
*/
public
final
class
Servlets
{
public
static
final
String
QUOTE
=
"\""
;
private
static
final
Logger
LOG
=
LoggerFactory
.
getLogger
(
Servlets
.
class
);
private
Servlets
()
{
/* singleton */
...
...
@@ -117,7 +122,7 @@ public final class Servlets {
public
static
Response
getErrorResponse
(
String
message
,
Response
.
Status
status
)
{
JSONObject
errorJson
=
new
JSONObject
();
Object
errorEntity
=
JSONObject
.
quote
(
message
);
Object
errorEntity
=
Servlets
.
escapeJsonString
(
message
);
try
{
errorJson
.
put
(
MetadataServiceClient
.
ERROR
,
errorEntity
);
errorEntity
=
errorJson
;
...
...
@@ -140,4 +145,9 @@ public final class Servlets {
public
static
String
getRequestId
()
{
return
Thread
.
currentThread
().
getName
();
}
public
static
String
escapeJsonString
(
String
inputStr
)
{
ParamChecker
.
notNull
(
inputStr
,
"Input String cannot be null"
);
return
StringEscapeUtils
.
escapeJson
(
inputStr
);
}
}
webapp/src/test/java/org/apache/hadoop/metadata/web/resources/EntityJerseyResourceIT.java
View file @
58ea4650
...
...
@@ -21,6 +21,7 @@ package org.apache.hadoop.metadata.web.resources;
import
com.google.common.collect.ImmutableList
;
import
com.sun.jersey.api.client.ClientResponse
;
import
com.sun.jersey.api.client.WebResource
;
import
org.apache.commons.lang.RandomStringUtils
;
import
org.apache.hadoop.metadata.MetadataServiceClient
;
import
org.apache.hadoop.metadata.typesystem.Referenceable
;
import
org.apache.hadoop.metadata.typesystem.Struct
;
...
...
@@ -231,8 +232,7 @@ public class EntityJerseyResourceIT extends BaseResourceIT {
.
accept
(
MediaType
.
APPLICATION_JSON
)
.
type
(
MediaType
.
APPLICATION_JSON
)
.
method
(
HttpMethod
.
GET
,
ClientResponse
.
class
);
Assert
.
assertEquals
(
clientResponse
.
getStatus
(),
Response
.
Status
.
BAD_REQUEST
.
getStatusCode
());
Assert
.
assertEquals
(
clientResponse
.
getStatus
(),
Response
.
Status
.
BAD_REQUEST
.
getStatusCode
());
String
responseAsString
=
clientResponse
.
getEntity
(
String
.
class
);
Assert
.
assertNotNull
(
responseAsString
);
...
...
@@ -349,8 +349,7 @@ public class EntityJerseyResourceIT extends BaseResourceIT {
.
accept
(
MediaType
.
APPLICATION_JSON
)
.
type
(
MediaType
.
APPLICATION_JSON
)
.
method
(
HttpMethod
.
POST
,
ClientResponse
.
class
,
traitInstanceAsJSON
);
Assert
.
assertEquals
(
clientResponse
.
getStatus
(),
Response
.
Status
.
BAD_REQUEST
.
getStatusCode
());
Assert
.
assertEquals
(
clientResponse
.
getStatus
(),
Response
.
Status
.
BAD_REQUEST
.
getStatusCode
());
}
@Test
(
dependsOnMethods
=
"testAddTrait"
)
...
...
@@ -389,17 +388,45 @@ public class EntityJerseyResourceIT extends BaseResourceIT {
.
accept
(
MediaType
.
APPLICATION_JSON
)
.
type
(
MediaType
.
APPLICATION_JSON
)
.
method
(
HttpMethod
.
DELETE
,
ClientResponse
.
class
);
Assert
.
assertEquals
(
clientResponse
.
getStatus
(),
Response
.
Status
.
BAD_REQUEST
.
getStatusCode
());
Assert
.
assertEquals
(
clientResponse
.
getStatus
(),
Response
.
Status
.
BAD_REQUEST
.
getStatusCode
());
String
responseAsString
=
clientResponse
.
getEntity
(
String
.
class
);
Assert
.
assertNotNull
(
responseAsString
);
JSONObject
response
=
new
JSONObject
(
responseAsString
);
Assert
.
assertNotNull
(
response
.
get
(
MetadataServiceClient
.
ERROR
));
Assert
.
assertEquals
(
response
.
getString
(
MetadataServiceClient
.
ERROR
),
"trait="
+
traitName
+
" should be defined in type system before it can be deleted"
);
Assert
.
assertNotNull
(
response
.
get
(
MetadataServiceClient
.
STACKTRACE
));
}
private
String
random
()
{
return
RandomStringUtils
.
random
(
10
);
}
@Test
public
void
testUTF8
()
throws
Exception
{
String
classType
=
random
();
String
attrName
=
random
();
String
attrValue
=
random
();
HierarchicalTypeDefinition
<
ClassType
>
classTypeDefinition
=
TypesUtil
.
createClassTypeDef
(
classType
,
ImmutableList
.<
String
>
of
(),
TypesUtil
.
createUniqueRequiredAttrDef
(
attrName
,
DataTypes
.
STRING_TYPE
));
TypesDef
typesDef
=
TypeUtils
.
getTypesDef
(
ImmutableList
.<
EnumTypeDefinition
>
of
(),
ImmutableList
.<
StructTypeDefinition
>
of
(),
ImmutableList
.<
HierarchicalTypeDefinition
<
TraitType
>>
of
(),
ImmutableList
.
of
(
classTypeDefinition
));
createType
(
typesDef
);
Referenceable
instance
=
new
Referenceable
(
classType
);
instance
.
set
(
attrName
,
attrValue
);
Id
guid
=
createInstance
(
instance
);
ClientResponse
response
=
getEntityDefinition
(
guid
.
_getId
());
String
definition
=
getEntityDefinition
(
response
);
Referenceable
getReferenceable
=
InstanceSerialization
.
fromJsonReferenceable
(
definition
,
true
);
Assert
.
assertEquals
(
getReferenceable
.
get
(
attrName
),
attrValue
);
}
private
void
createHiveTypes
()
throws
Exception
{
HierarchicalTypeDefinition
<
ClassType
>
databaseTypeDefinition
=
TypesUtil
.
createClassTypeDef
(
DATABASE_TYPE
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment