Skip to content

Commit

Permalink
common changes to support extracting numbers to multiple projects
Browse files Browse the repository at this point in the history
  • Loading branch information
AndreasPetter committed Jan 14, 2015
1 parent 5eb2813 commit 94c8557
Show file tree
Hide file tree
Showing 7 changed files with 64 additions and 12 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,27 @@
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package scray.common.exceptions
package scray.common.exceptions;

import java.util.UUID
/**
* Some generic Exception ids
* @author andreas
*
*/
public enum ExceptionIDs {

object ExceptionIDs {
// SIL-Scray-Commons-000+ error types
val GENERAL_FAULT = "SIL-Scray-Commons-001-General"
val SERIALIZATION_FAULT = "SIL-Scray-Commons-002-Serialization"
val UNIMPLEMNTED = "SIL-Scray-Commons-003-Unimplemented"
// SIL-Scray-Commons-000+ error types
GENERAL_FAULT("SIL-Scray-Commons-001-General"),
SERIALIZATION_FAULT("SIL-Scray-Commons-002-Serialization"),
UNIMPLEMNTED("SIL-Scray-Commons-003-Unimplemented");

private ExceptionIDs(String name) {
this.name = name;
}

private String name;

public String getName() {
return name;
}
}

class ScrayException(id : String, query : Option[UUID], msg : String, cause : Option[Throwable] = None)
extends Exception(
{ query match { case None => id + ": " + msg; case Some(q) => id + ": " + msg + " for query " + q } },
cause.getOrElse(null)) with Serializable
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
// See the LICENCE.txt file distributed with this work for additional
// information regarding copyright ownership.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package scray.common.serialization;

import java.util.UUID;
import java.io.Serializable;

/**
* Common Scray Exception super class
* @author andreas
*
*/
public class ScrayException extends Exception implements Serializable {

public ScrayException(String id, UUID query, String msg, Throwable cause) {
super(id + ": " + msg + (q != null)?(" for query " + q):"", cause)
}

public ScrayException(String id, String msg, Throwable cause) {
this(id, null, msg, cause)
}

public ScrayException(String id, UUID query, String msg) {
this(id, query, msg, null)
}

public ScrayException(String id, String msg) {
this(id, null, msg, null)
}

}

0 comments on commit 94c8557

Please sign in to comment.